Welcome to Luttappi! This project aims to provide a modern, maintainable, and scalable web application foundation. This readme will help developers quickly get started, understand the project's layout, and grasp the key design and architectural principles.
- Project Overview
- Getting Started
- Project Structure
- Design and Architecture
- Configuration
- Development Workflow
- Linting & Code Quality
- Contributing
- License
Luttappi is structured as a modern JavaScript/Node.js web application. It leverages popular tools and patterns for frontend and backend development, with a focus on developer experience, code consistency, and extensibility.
- Node.js (see
package.jsonfor compatible versions) - npm or yarn
- (Optional) Environment variable configuration in
.envfile
-
Clone the repository:
git clone https://github.com/RMRanjit/Luttappi.git cd Luttappi -
Install dependencies:
npm install # or yarn install -
Set up environment variables:
- Copy
.env.exampleto.envif present, or use the.envtemplate provided. - Edit the
.envfile with the required configuration.
- Copy
-
Run the development server:
npm start # or yarn start
Luttappi/
├── .env # Environment variables
├── .eslintrc.json # ESLint configuration
├── .gitignore
├── README.md
├── package.json
├── public/ # Static assets (images, favicon, etc.)
└── src/ # Application source code
public/: Static files served directly (e.g., HTML, images).src/: Main application source code (components, logic, styles, etc.)..env: Configuration for sensitive/environment-specific values..eslintrc.json: Linting rules for code style and best practices.
- All functional code lives in
src/, separated into logical modules (e.g., components, services, utils). - Encourages reusability and easier testing.
- Uses environment variables from
.envto manage sensitive or environment-specific settings. - Keeps configuration out of code for flexibility and security.
- ESLint for code quality and style enforcement (see
.eslintrc.json). - Scripts in
package.jsonstreamline common tasks (start, build, lint, test, etc.).
- The clean separation of static assets (
public/) and application logic (src/) makes it straightforward to add functionality or swap technologies (e.g., switch frontend frameworks, add API endpoints).
- All runtime configuration should be specified in the
.envfile. - Ensure you do not commit sensitive data;
.gitignoreincludes.envby default.
- Branching: Use feature branches for new work.
- Linting: Run
npm run lintbefore opening a PR. - Testing: (If tests are present) Run
npm test. - Pull Requests: Ensure your code passes lint and tests before requesting review.
- The project uses ESLint with rules defined in
.eslintrc.json. - Run the linter:
npm run lint # or yarn lint
We welcome contributions! Please open issues or pull requests with clear descriptions. Follow the established code style and commit guidelines.
This project is licensed under the MIT License. See LICENSE for details.