-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the backenderer wiki!
This page outlines the structure of the Backend Platform project. It serves as a guide to understanding the organization of files, folders, and components within the repository.
The root directory contains the core project files and configuration.
/
├── terraform/ # Terraform configurations for IaC
├── sample-apps/ # Sample applications to demonstrate platform usage
├── src/ # Source code for the platform backend
├── docs/ # Documentation files (e.g., architecture diagrams, guides)
├── cli/ # CLI tool for interacting with the platform
├── .env # Environment configuration file (not committed)
├── .gitignore # Git ignore rules
├── README.md # Project overview and setup instructions
Contains Terraform configuration files to provision AWS infrastructure.
terraform/
├── main.tf # Entry point for Terraform configuration
├── variables.tf # Defines input variables for Terraform
├── outputs.tf # Outputs for Terraform resources
├── modules/ # Reusable Terraform modules
│ ├── vpc/ # VPC configuration module
│ ├── ecs/ # ECS configuration module
│ ├── rds/ # RDS configuration module
│ └── s3/ # S3 configuration module
Sample backend applications for testing and demonstrating platform capabilities.
sample-apps/
├── spring-boot-app/ # A Spring Boot sample application
│ ├── Dockerfile # Dockerfile to build the Spring Boot app
│ └── src/ # Application source code
├── flask-app/ # (Planned) Flask sample application
└── django-app/ # (Planned) Django sample application
The source code for the platform backend, built using Spring Boot.
src/
├── main/java/com/platform/ # Main Java source code
│ ├── adapters/ # Framework-specific adapters (e.g., Spring Boot, Flask)
│ ├── api/ # REST API controllers
│ ├── services/ # Business logic and application services
│ ├── utils/ # Utility classes and helpers
│ └── Application.java # Main entry point for the backend application
├── main/resources/ # Configuration files (e.g., application.yml)
├── test/ # Unit and integration tests
Documentation files to help users and developers understand the project.
docs/
├── architecture-diagram.png # High-level architecture diagram
├── usage-guide.md # Step-by-step usage guide
├── faq.md # Frequently asked questions
└── contributing.md # Contributor guidelines
The command-line interface (CLI) tool for interacting with the platform.
cli/
├── bin/ # Executable scripts
├── src/ # CLI source code
├── package.json # Node.js dependencies and scripts
└── README.md # Instructions for using the CLI
Environment configuration file for sensitive variables (e.g., AWS credentials, API keys). This file should not be committed to the repository.
Defines files and folders to exclude from version control.
The main entry point for understanding the project, containing an overview, setup instructions, and usage examples.
To extend the project for new features or frameworks:
-
Add new framework adapters in
src/main/java/com/platform/adapters. -
Create new sample apps in
sample-apps/to demonstrate usage. -
Update Terraform modules in
terraform/modulesto provision required resources. -
Document changes in
docs/to ensure consistency and clarity.
For further details, refer to the Contributing Guide.