Step by Step guide to app development.
This guide intends to define each step to create a development environement and all tools usage and setup.
Design and dev tools set
Howto collect and organize requirments and ideas ?
- User Interface prototyping : Penpot
Howto manage content and sources ?
- source management : Gitlab
Framework setup
template-base - general purpose template:
- Create gitlab repository
- Configure folder hieararchy
- Create ReadMe english
- Configure branch standards
- Configure commit message standards
- Configure issue message standards
- Configure merge message standards
- Configure labels list
- Configure board structure
- Configure .gitignore
- Export template repo (workaround for gitlab CE)
litestar-template gitlab template
- Create gitlab repository by importing template-base
- Create .toml peotry setup
- Create .env and .env.dev
Documentation setup
Principles
- primary language : English
- folder structure compatible with mkdocs generation
- per language folder with INCLUDE mkdocs
Structure
docs/
┣ project/
┃ ┣ EN/
┃ ┃ ┣ docs/
┃ ┃ ┃ ┣ assets/
┃ ┃ ┃ ┃ ┗ image.png
┃ ┃ ┃ ┣ designs/ --> Store design (UI, Data, UML)
┃ ┃ ┃ ┣ learnings/
┃ ┃ ┃ ┃ ┣ dev_step_by_step_checklist.md
┃ ┃ ┃ ┃ ┣ Learning_curiculum.md
┃ ┃ ┃ ┃ ┣ dev_tools_utilities.md
┃ ┃ ┃ ┃ ┣ howto_....md
┃ ┃ ┃ ┃ ┣ project_notes_en.md
┃ ┃ ┃ ┃ ┗ style-guide.md
┃ ┃ ┃ ┣ overrides/
┃ ┃ ┃ ┃ ┗ partials/
┃ ┃ ┃ ┣ stylesheets/
┃ ┃ ┃ ┃ ┗ extra.css
┃ ┃ ┃ ┣ 00_pitch.md
┃ ┃ ┃ ┣ 01_product_summary.md
┃ ┃ ┃ ┣ 02_roadmap.md
┃ ┃ ┃ ┣ 03_functionnal_architecture.md
┃ ┃ ┃ ┣ 04_technical _architecture.md
┃ ┃ ┃ ┣ 05_product _architecture.md
┃ ┃ ┃ ┣ 09_project_organization.md
┃ ┃ ┃ ┣ 10_standard_principles.md
┃ ┃ ┃ ┗ 90_think_tank.md
┃ ┃ ┗ mkdocs.yml
┃ ┗ FR/
┃ ┣ docs/
┃ ┃ ┃ ┗ ...
┃ ┗ mkdocs.yml
┣ resources/
┃ ┣ assets/
┃ ┃ ┣ obikio-banner.png
┃ ┃ ┗ obikio-icon.png
┃ ┣ site/
┃ ┃ ┗ index.html
┃ ┗ templates_snippets/
┃ ┣ .env.dev
┃ ┣ .gitignore
┃ ┣ README.md
┃ ┗ pyproject.toml
┗ README.md
- Diffusion : write a .gitlab.ci publication script
- Presentaion : create a style_guide.md to store all styles standards description
Product design steps
- open a "thinktank" file to gather all ideas, suggestions or possible features
- write a short project summary to be used a pitch ( what, why, how)
- write a product description defining key objectives, user target, key functions and data object
- select a business case over 3 most signifiants.
- prototype UI of this business case to collect user feebacks (see PENPOT tool)
- create a directory to store Design files and models (docs/designs)
- prototype data object using examples