An open API service indexing awesome lists of open source software.

https://github.com/kbrdn1/anime-tracker

Anime Tracker is a web application that allows you to track your favorite anime and manga.
https://github.com/kbrdn1/anime-tracker

bcrypt bun honojs prisma react typescript

Last synced: about 2 months ago
JSON representation

Anime Tracker is a web application that allows you to track your favorite anime and manga.

Awesome Lists containing this project

README

        

# Anime Tracker

## Description

Anime Tracker is a web application that allows you to track your favorite anime and manga.

## Features
- [ ] User/Admin Account
- [ ] Login
- [ ] Register
- [ ] Forgot Password
- [ ] Reset Password
- [ ] Change Password
- [ ] Change Email
- [ ] Delete Account
- [ ] Language
- [ ] Theme
- [ ] Light
- [ ] Dark
- [ ] System
- [ ] Custom
- [ ] Kimetsu no Yaiba
- [ ] Jujutsu Kaisen
- [ ] Naruto
- [ ] One Piece
- [ ] Dragon Ball
- [ ] My Hero Academia
- [ ] Hunter x Hunter
- [ ] Bleach
- [ ] Attack on Titan
- [ ] Profile
- [ ] Viewing Time
- [ ] Rank
- [ ] Achievements
- [ ] Avatar
- [ ] Display top 3/5/10 previously watched animes
- [ ] 3 recommendations of animes
- [ ] Mini Calendar
- [ ] List of animes
- [ ] Anime selection etcโ€ฆ
- [ ] Watchlist / Favorites
- [ ] Achievements
- [ ] Rank
- [ ] Search
- [ ] Notifications
> Work in progress

## Tech Stack

### Common
- [Bun](https://bun.sh/)
- [Prettier](https://prettier.io/)
- [TypeScript](https://www.typescriptlang.org/)

### Frontend
- [Vite](https://vitejs.dev/)
- [React](https://reactjs.dev/)
- [PandaCSS](https://panda-css.com/)
- [Lucide](https://lucide.dev/)
- [ESLint](https://eslint.org/)

### Backend
- [Hono](https://hono.dev/)
- [Prisma](https://www.prisma.io/)
- [JWT](https://jwt.io/)
- [Bcrypt](https://www.npmjs.com/package/bcrypt)

### Database
- [MariaDB](https://mariadb.org/)
- [PhpMyAdmin](https://www.phpmyadmin.net/)

### DevOps
- [Docker](https://www.docker.com/)
- [Docker Compose](https://docs.docker.com/compose/)
- [GitHub Actions](https://docs.github.com/fr/actions)

### Tools
- [VSCode](https://code.visualstudio.com/)
- [Postman](https://www.postman.com/)
- [Trello](https://trello.com/)

## Setup
```bash
git clone [email protected]:kbrdn1/Anime-Tracker.git
```

### App
```
cd app
bun install
bun dev
```

```
open http://localhost:5173
```

### Back
```
cd back
bun install
docker-compose up -d
bun dev
```

```
open http://localhost:3000
```
## Naming conventions

### Branches
Use the following prefixes for your branch names:
- `feature/#-`
- `bugfix/#-`
- `hotfix/#-`
- `chore/#-`
- `refactor/#-`
- `test/#-`
- `docs/#-`

#### Examples
- `feature/#1-add-new-feature`
- `bugfix/#2-fix-typo`
- `hotfix/#3-fix-bug`

### Pull Requests
Use the following prefixes for your pull request titles:
`[#] `

#### Examples
- `[#1] Add new feature`

### Commits
Use the following prefixes for your commit messages:
` (): `

#### Emojis
Use the following emoji prefixes for your commit messages [Gitmoji](https://gitmoji.dev/)

You can install the Gitmoji extension for VSCode [here](https://marketplace.visualstudio.com/items?itemName=seatonjiang.gitmoji-vscode)

#### Types
Choose a type from the following list, in terms of the kind of change that you're committing:
- `feat`: A new feature
- `fix`: A bug fix
- `docs`: Documentation only changes
- `style`: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
- `refactor`: A code change that neither fixes a bug nor adds a feature
- `perf`: A code change that improves performance
- `test`: Adding missing or correcting existing tests
- `chore`: Changes to the build process or auxiliary tools and libraries such as documentation generation

#### Scopes
Choose a scope from the following list, in terms of the location of the change:
- `app`
- `back`

#### Breaking Changes
Any breaking changes should be indicated with `!` after the type/scope. e.g. `โœจ feat(back)!: this is a breaking change`

#### Subject
- Describe what you did in imperative mood, e.g.:
| Word | Description | Example |
| --- | --- | --- |
| `add` | Create a capability e.g. feature, test, dependency. | `โœจ feat: add new feature` |
| `change` | Change behavior of the code e.g. refactor, style, doc. | `๐Ÿ”ง chore: change config` |
| `remove` | Delete a capability e.g. feature, test, dependency. | `๐Ÿ”ฅ feat: remove feature` |
| `fix` | Fix an issue e.g. bug, typo, accident, misstatement. | `๐Ÿ› fix: fix typo` |
| `bump` | Increase the version of something e.g. dependency. | `โฌ†๏ธ chore: bump version` |
| `make` | Add or change something to make it work. | `๐Ÿ— chore: make build` |
| `start` | Begin doing something; e.g. create a feature flag. | `๐Ÿ chore: start feature flag` |
| `stop` | End doing something; e.g. remove a feature flag. | `๐Ÿ chore: stop feature flag` |
| `optimize` | A change that MUST be just about performance, e.g. speed up code. | `๐Ÿš€ chore: optimize code` |
| `revert` | Revert a change e.g. revert commit. | `โช chore: revert commit` |
| `clean` | A change that MUST be just about removing code. | `๐Ÿงน chore: clean code` |
| `disable` | A change that MUST be just about disabling code. | `๐Ÿ”’ chore: disable code` |
| `refactor` | A change that MUST be just about refactoring code. | `โ™ป๏ธ chore: refactor code` |
| `update` | A change that MUST be just about updating code. | `๐Ÿš€ chore: update code` |
| `improve` | A change that MUST be just about improving code. | `๐Ÿš€ chore: improve code` |
| `clean` | A change that MUST be just about cleaning code. | `๐Ÿงน chore: clean code` |
| `optimize` | A change that MUST be just about optimizing code. | `๐Ÿš€ chore: optimize code` |
> Source: [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)
- Don't capitalize first letter
- No dot (.) at the end

#### Examples
- `โœจ feat(app): add new feature`
- `๐Ÿ› fix(app): fix typo`
- `๐Ÿ”ง chore(app): change config`
- `๐Ÿ”ฅ feat(app)!: remove feature`

## Realease
Versioning is done automatically by [GitHub Actions](https://docs.github.com/fr/actions)

`..`
- `major`: Breaking changes
- `minor`: New features
- `patch`: Bug fixes

### Examples
- `1.0.0` First release
- `1.1.0` New feature
- `1.1.1` Bug fix

## Project Structure

```
.
โ”œโ”€โ”€ app
โ”‚ย ย  โ”œโ”€โ”€ src
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ assets
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ components
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ containers
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ layouts
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ forms
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ typography
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ constants
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ hooks
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ pages
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ router
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ security
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ stores
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ contexts
โ”‚ย ย  โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ providers
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ styles
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ types
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ utils
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ App.tsx
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ main.tsx
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ vite-env.d.ts
โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ index.html
โ”‚ย ย  โ”œโ”€โ”€ .env.example
โ”‚ย ย  โ”œโ”€โ”€ .eslintrc.cjs
โ”‚ย ย  โ”œโ”€โ”€ .gitignore
| โ”œโ”€โ”€ .prettierignore
โ”‚ย ย  โ”œโ”€โ”€ index.html
โ”‚ย ย  โ”œโ”€โ”€ package.json
โ”‚ย ย  โ”œโ”€โ”€ panda.config.ts
โ”‚ย ย  โ”œโ”€โ”€ postcss.config.ts
| โ”œโ”€โ”€ .prettierignore
โ”‚ย ย  โ”œโ”€โ”€ prettier.config.mjs
โ”‚ย ย  โ”œโ”€โ”€ README.md
โ”‚ย ย  โ”œโ”€โ”€ tsconfig.json
โ”‚ย ย  โ”œโ”€โ”€ tsconfig.node.json
โ”‚ย ย  โ””โ”€โ”€ vite.config.ts
โ”œโ”€โ”€ back
โ”‚ย ย  โ”œโ”€โ”€ prisma
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ migrations
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ schema.prisma
โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ seed.ts
โ”‚ย ย  โ”œโ”€โ”€ src
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ constants
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ controllers
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ middlewares
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ models
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ routes
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ services
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ types
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ utils
โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ index.ts
โ”‚ย ย  โ”œโ”€โ”€ .env.example
โ”‚ย ย  โ”œโ”€โ”€ .gitignore
| โ”œโ”€โ”€ .prettierignore
โ”‚ย ย  โ”œโ”€โ”€ docker-compose.yml
โ”‚ย ย  โ”œโ”€โ”€ package.json
โ”‚ย ย  โ”œโ”€โ”€ prettier.config.mjs
โ”‚ย ย  โ”œโ”€โ”€ README.md
โ”‚ย ย  โ””โ”€โ”€ tsconfig.json
โ”œโ”€โ”€ .nvmrc
โ”œโ”€โ”€ .prettierignore
โ”œโ”€โ”€ prettier.config.mjs
โ”œโ”€โ”€ package.json
โ””โ”€โ”€ README.md
```