- Problem to solve: Enable users to generate dynamic chemical labels in accordance to GHS rulings.
- Minimum viable product (MVP):
- The website must contain a search bar which works with chemical common names.
- Generate a PNG or PDF of the chemical searched.
- Enable the user to download the labels.
- Future features:
- A more robust search bar which lets users search chemicals by structure or ID
- Enable editing the labels generated
- Enable creation of your own labels
- Enable addition of company logos
- Addition of more templates with different dimentions
- Tasks:
- Frontend: TODO
- Task manager: Github projects? TODO
- Languages & Frameworks:
- Frontend: React
- Backend: Python + Flask
- Database: SQLite
- Tools:
- Version Control: Git
- Text editor: VSCode or VIM (i would need to learn VIM)
- Testing: Frontend: Jest, Backend: Pytest
- Label gen: ReportLab, Pillow (should output a .jpg or .pdf file of at least 300 dpi)
- Git repository
- Regular commits: Commit changes frequently with meaninful messages to track progress and facilitate debugging
- Local environment: venv
- Project structure: How would i structure the project filesTODO
- Document my approach: I should write down the high-level steps and the tools i'll be using TODO
- Deadline/milestones: Breakdown of my project into phases, rough deadlines to keep on track TODO
- Feature prioritization:
- 1.- Homepage structure
- 2.- Search bar
- 3.- HTML label code generation
- 4.- Enable label download
- Start small: Implement core features first. Work in iterations, adding functionality step-by-step
- Test frequently
- Code comments: Make sure my code is readable and well-commented.
- README: Write a README file with instructions on how to run the project, the tech stack and any relevant information.
- After getting the MVP, refine the project by adding new features or improving performance based on feedback.