140 lines
2.9 KiB
Markdown
140 lines
2.9 KiB
Markdown
|
# daily-aujourdhui-frontend
|
|||
|
|
|||
|
Daily Aujourd’hui is a platform where users can create daily meeting
|
|||
|
polls, invite participants, and vote on whether a meeting is necessary.
|
|||
|
|
|||
|
This repository contains the frontend code for the project.
|
|||
|
|
|||
|
The backend for this project can be found
|
|||
|
[here](https://labs.phundrak.com/phundrak/daily-aujourdhui-backend).
|
|||
|
|
|||
|
## Project Setup
|
|||
|
|
|||
|
### Prerequisites
|
|||
|
|
|||
|
- Node.js
|
|||
|
- npm
|
|||
|
|
|||
|
### Installation
|
|||
|
|
|||
|
1. Clone the repository:
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://labs.phundrak.com/phundrak/daily-aujourdhui-frontend.git
|
|||
|
cd daily-aujourdhui-frontend
|
|||
|
```
|
|||
|
|
|||
|
2. Install dependencies:
|
|||
|
|
|||
|
Using npm:
|
|||
|
|
|||
|
```bash
|
|||
|
npm i
|
|||
|
```
|
|||
|
|
|||
|
Using yarn:
|
|||
|
|
|||
|
```bash
|
|||
|
yarn install
|
|||
|
```
|
|||
|
|
|||
|
Using pnpm:
|
|||
|
|
|||
|
```bash
|
|||
|
pnpm install
|
|||
|
```
|
|||
|
|
|||
|
3. Create a `.env` file
|
|||
|
|
|||
|
```bash
|
|||
|
cp .env.example .env
|
|||
|
```
|
|||
|
|
|||
|
Modify the environment variables to fit your installation of Daily
|
|||
|
Aujourd’hui.
|
|||
|
|
|||
|
4. Run the development server
|
|||
|
|
|||
|
Using npm:
|
|||
|
|
|||
|
```bash
|
|||
|
npm run dev
|
|||
|
```
|
|||
|
|
|||
|
Using yarn:
|
|||
|
|
|||
|
```bash
|
|||
|
yarn dev
|
|||
|
```
|
|||
|
|
|||
|
Using pnpm:
|
|||
|
|
|||
|
```bash
|
|||
|
pnpm run dev
|
|||
|
```
|
|||
|
|
|||
|
### Building for Production
|
|||
|
|
|||
|
To build the project for production, run:
|
|||
|
|
|||
|
- Using npm:
|
|||
|
|
|||
|
```bash
|
|||
|
npm run build
|
|||
|
```
|
|||
|
|
|||
|
- Using yarn:
|
|||
|
|
|||
|
```bash
|
|||
|
yarn build
|
|||
|
```
|
|||
|
|
|||
|
- Using pnpm:
|
|||
|
|
|||
|
```bash
|
|||
|
pnpm run build
|
|||
|
```
|
|||
|
|
|||
|
## Project Structure
|
|||
|
|
|||
|
```text
|
|||
|
src/
|
|||
|
├── assets/ # Static assets such as images, fonts, styles, etc.
|
|||
|
├── components/ # Vue components
|
|||
|
│ └─ __tests__/ # Vue components tests
|
|||
|
├── composables/ # Vue composables for reusable logic
|
|||
|
│ └─ __tests__/ # Vue composables tests
|
|||
|
├── router/ # Vue Router configuration
|
|||
|
├── stores/ # Pinia stores for state management
|
|||
|
│ └─ __tests__/ # Vue stores tests
|
|||
|
├── views/ # Vue views/pages
|
|||
|
├── App.vue # Main Vue component
|
|||
|
└── main.ts # Main entry point
|
|||
|
```
|
|||
|
|
|||
|
## Environment Variables
|
|||
|
|
|||
|
You can create your `.env` file based on the example file
|
|||
|
`.env.example`. Here are the variables you need to set to make your
|
|||
|
frontend work correctly:
|
|||
|
|
|||
|
- `VITE_LOGTO_ENDPOINT`: The enpoint used by your Logto application.
|
|||
|
This value should be given to you by Logto when you create your
|
|||
|
application in the Logto console.
|
|||
|
- `VITE_LOGTO_APP_ID`: The identifier of your application. Same as
|
|||
|
above.
|
|||
|
- `VITE_HOSTNAME`: The hostname of your frontend. When running in
|
|||
|
development, it will usually be `http://localhost:5173`, but it can
|
|||
|
become something like `https://example.com` when you deploy it in
|
|||
|
production.
|
|||
|
|
|||
|
**Warning**: The hostname must NOT end with a trailing slash.
|
|||
|
- `VITE_API_BASE_URL`: The hostname of your backend. In development,
|
|||
|
it will probably be `http://localhost:3000`, but it can become
|
|||
|
something like `https://api.example.com` when in production.
|
|||
|
|
|||
|
## License
|
|||
|
|
|||
|
This project is licensed under the AGPL-3.0 free license. See the
|
|||
|
[LICENSE](LICENSE.md) for more details.
|