109 lines
2.6 KiB
Markdown
109 lines
2.6 KiB
Markdown
This is a core of website with content management system.
|
|
|
|
### Getting Started
|
|
|
|
1. Clone this repo.
|
|
|
|
```bash
|
|
git clone https://github.com/freshgalangmandiri/web-cms-fullstack
|
|
```
|
|
|
|
2. Install dependencies
|
|
|
|
```
|
|
cd web-cms-fullstack
|
|
npm install
|
|
```
|
|
|
|
3. Run Project
|
|
|
|
```
|
|
npm run dev
|
|
```
|
|
|
|
### Project Structure
|
|
|
|
In general, this is the folder structure of the project.
|
|
|
|
```
|
|
src
|
|
└── app
|
|
│ ├── (Admin)
|
|
│ │ ├── dashboard
|
|
│ │ │ ├── [...slug]
|
|
│ │ │ ├── categories/ ...
|
|
│ │ │ ├── gallery / ...
|
|
│ │ │ ├── posts / ...
|
|
│ │ │ ├── tags / ...
|
|
│ │ │ ├── users / ...
|
|
│ │ │ ├── users-login / ...
|
|
│ │ │ ├── dashboard.module.css
|
|
│ │ │ ├── layout.js
|
|
│ │ │ ├── not-found.js
|
|
│ │ │ └── page.js
|
|
│ │ ├── login / ...
|
|
│ │ ├── unauthorize / ...
|
|
│ ├── (Web)
|
|
│ │ └── post / ...
|
|
│ ├── api / ...
|
|
│ ├── forbidden / ...
|
|
│ ├── library / ....
|
|
│ ├── favicon.ico
|
|
│ ├── global-error.js
|
|
│ ├── globals.css
|
|
│ ├── layout.js
|
|
│ ├── manifest.js
|
|
│ ├── page.js
|
|
│ ├── page.module.css
|
|
│ ├── robots.js
|
|
│ ├── sitemap.js
|
|
├── components
|
|
│ ├── administrator / ...
|
|
│ ├── editor / ...
|
|
│ ├── google / ...
|
|
│ ├── ui / ...
|
|
│ └── web / ...
|
|
├── config / ...
|
|
├── data / ...
|
|
├── hooks / ...
|
|
├── middlewares / ...
|
|
├── models / ...
|
|
├── providers / ...
|
|
├── utils
|
|
│ ├── clients.js
|
|
│ ├── db.config.js
|
|
│ └── middlewarewrap.js
|
|
├── server.js
|
|
├── .env
|
|
├── .gitignore
|
|
└── ...
|
|
```
|
|
|
|
### Collaboration workflow rules
|
|
|
|
#### Standard Types (prefixes):
|
|
|
|
- `feature/` → for new features
|
|
- `fix/` → for bug fixes
|
|
- `hotfix/` → for urgent production fixes
|
|
- `chore/` → for maintenance (deps, configs, CI/CD, etc.)
|
|
- `docs/` → for documentation
|
|
|
|
#### Follow the Conventional Commits style Types:
|
|
|
|
- `feat` → new feature
|
|
- `fix` → bug fix
|
|
- `docs` → documentation only
|
|
- `style` → code style (formatting, no logic change)
|
|
- `refactor` → code restructuring without behavior change
|
|
- `test` → adding or fixing tests
|
|
- `chore` → build process, tooling, configs
|
|
|
|
> Examples:
|
|
>
|
|
> 1. `feat(auth): add JWT-based login`
|
|
> 2. `fix(api): handle null values in user response`
|
|
> 3. `docs(readme): update setup instructions`
|
|
> 4. `refactor(db): optimize query for invoices`
|
|
> 5. `chore(ci): add lint step to GitHub Actions`
|