Build a backend with CRUD, API and push notifications
€8-500 EUR
Paiement à la livraison
Hi everyone,
I need a backend for a future mobile app.
About the app (not part of this project):
The app tells you when to cut/prune your plants and flowers. A user registers, tells in the app which plants he has. The backend keeps track of this, and sends out push notifications to the device when it's time to cut/prune the plants.
This project is for the backend (CRUD, authentication, API) of this app. The backend should be a place where an admin can add plants, genera (plural of genus, genus = family of plants) and pruning periods. The backend also keeps track of users, and devices.
CRUD
* The system has a CRUD backend for the whole model, including simple clientside search in the data tables
* For the description of plants and genuses, html should be used (tinyMCE or similar)
API
* The system should support a serverside search function that searches in the plant and genus name, latin name, and descriptions.
* The system has api methods for
- List of all plants
- List of all genera
- List of plants for genus x
- List of plants for user x
- List of genera for user x
- List of pruning periods for plant/genus x
Etcetera. The full list is in the attachment (sheet API_methods).
Authentication
* Only as an administrator user, I can see the registered users
* The system should be able to authenticate a backend user through email and password
* The system should be able to authenticate an app user through the combination of email address and a 4 digit pin code
* A reset password / forgot password function should exist for backend (HTML) and app (API) users.
* The system should encrypt the pin code, which is only used once until a user re-installs
* The system should support multiple device(token)s for a single app user as authentication
Other
* The system should be able to send push notifications for Apple (http/2 !!) and Google periodically
* Example: every 24hrs the system checks which plants are ready for pruning, and sends a notification to each user that has this plant. Max 1 notification per user per day: e.g. "Your Plant A, B and C are ready for pruning. Do this before [end of pruning period]"
* The system should be able to handle push notification errors, such as when the app is uninstalled
* The database and API is ready for future multilanguage. Default = Dutch
* The system should have a possibility to send a free-text push notification to a user
In the attachment you can find a basic domain model.
* This might change a bit, but probably not much.
* What's missing in the model is an authentication token. I don't know at which level that should be saved.
That's basically it.
I am open to different types of frameworkes and techniques. Please tell me what language, platform, frameworks and techniques you plan to use.
The project will have milestones for
1 a fully functional CRUD backend,
2 a fully functional API
3 Scheduled (recurring) push notifications functionality
4 full functionality of all above with the app. Building the app starts when API is ready.
Abovementioned are the requirements as I see now. Some extra things may appear during the project.
To clarify:
1. "Milestone 4: full functionality of all above with the app. Building the app starts when API is ready." just means that the API is complete and it actually works as intended. Nothing more. I wrote it as a separate milestone because the app is not yet ready at the start of this project.
2. The attached "requirements_en.xlsx" contains a sheet with the proposed input and output of the API
Nº du projet : #17464732
À propos du projet
Décerné à:
Hi there, i am a full stake developer. I can build a smart reliable and scalable backend in php laravel framework and i can guide you to host it as well
13 freelances font une offre moyenne de 523 € pour ce travail
How are you? I have much experience in web backend development for mobile apps. Please check my profile, I assure this project. I hope you to please hire me on this job. Your sincerely.
so my planning for this project is as follow: bankend should be in nodejs with mongodb. push notifications will be sent using FCM which will be trigger using cronjob for every 24hrs.
Hello, I would like to take this assignment. I am having 14 years of experience on web development, deployment and project management. Below are my core technical skills •ASP.Net /HTML/CSS/JavaScript/JQuery •C# Plus