Aston animal Sanctuary is a MERN stack based adoption management system, with the ability to
- ๐ฆ Add animals along with their details, and set them up for adoptions
- ๐ฎโโ๏ธ Have users sign up for the app
- ๐ผ Users can raise adoption request
- โ๏ธ Send out email notifications to users on adoption status change.
- ๐ Discover, search for, or filter animals setup for adoption
- ๐ Approve/Decline queued adoption requests
...And a lot more features to explore. Run your own instance and see it for yourself.
This application uses:
- ๐ Express Js for handling http traffic.
- ๐ NodeJS as the runtime
- ๐ฟ MongoDB as the database, and
- ๐ Mongoose as the ORM
- ๐ค Node-mailer as the email notification client
Created with โค๏ธ and ๐ผ in Delhi, India
To run your own instance, follow the given steps:
# Clone and Change Directory
git clone https://github.com/Just-Moh-it/Aston-Backend
cd Aston-Backend
# Install the dependencies
npm install
If you haven't already installed mongodb, get it here. Then copy the connection string and paste it according to the next step.
Rename the .env.example
file to .env
in the base of the folder and change the values accordingly.
To run the backend server, type in the terminal
npm start
Once all the above steps occur without any error, start the application using
npm start
You should see a browser window pop up with the following url
https://localhost:3000
This indicates the frontend started successfully. Now you need to create an admin user
On the browser instance, click on the Login | Register
link at the top, then enter the details you want the admin account to have, and press Register
.
Now, you need to open the mongodb database (using the CLI or MongoDb Compass, or Atlas itself if you're hosting the db on MongDb Atlas), and open the users
collection. There, you can search for the admin account by the its mail address.
After locating the document in the collection, change the role
value from 0
to 1
to handle the user as admin.
There's a lot that could be imroved in this application. If you want to contribute, visit CONTRIBUTING.md
This project is released under the MIT license. For more info, visit LICENSE.md
If You've successfully started the NodeJS server, the next step is to get the frontend up, and configure it to run with the backend. Visit the frontend here.