mirror of https://github.com/elk-zone/elk
54 lines
2.3 KiB
Markdown
54 lines
2.3 KiB
Markdown
# Contributing
|
|
|
|
We're really excited that you're interested in contributing to Elk! Before submitting your contribution, please read through the following guide.
|
|
|
|
## Online
|
|
|
|
You can use [StackBlitz Codeflow](https://stackblitz.com/codeflow) to fix bugs or implement features. You'll also see a Codeflow button on PRs to review them without a local setup. Once the elk repo has been cloned in Codeflow, the dev server will start automatically and print the URL to open the App. You should receive a prompt in the bottom-right suggesting to open it in the Editor or in another Tab. To learn more, check out the [Codeflow docs](https://developer.stackblitz.com/codeflow/what-is-codeflow).
|
|
|
|
[![Open in Codeflow](https://developer.stackblitz.com/img/open_in_codeflow.svg)](https://pr.new/elk-zone/elk)
|
|
|
|
## Local Setup
|
|
|
|
Clone the repository and run on the root folder:
|
|
|
|
```bash
|
|
pnpm i
|
|
pnpm run dev
|
|
```
|
|
|
|
`Warning`: you will need `corepack` enabled, check out the [Elk Contributing Guide](https://github.com/elk-zone/elk/blob/main/CONTRIBUTING.md) for a detailed guide on how to set up the project locally.
|
|
|
|
We recommend installing [ni](https://github.com/antfu/ni#ni), that will use the right package manager in each of your projects. If `ni` is installed, you can instead run:
|
|
|
|
```bash
|
|
ni
|
|
nr dev
|
|
```
|
|
|
|
## Testing
|
|
|
|
Elk uses [Vitest](https://vitest.dev). You can run the test suite with:
|
|
|
|
```bash
|
|
nr test
|
|
```
|
|
|
|
## Translation status
|
|
|
|
<TranslationState />
|
|
|
|
# Stack
|
|
|
|
- [Vite](https://vitejs.dev/) - Next Generation Frontend Tooling
|
|
- [Nuxt](https://nuxt.com/) - The Intuitive Web Framework
|
|
- [Vue](https://vuejs.org/) - The Progressive JavaScript Framework
|
|
- [VueUse](https://vueuse.org/) - Collection of Vue Composition Utilities
|
|
- [Pinia](https://pinia.vuejs.org/) - The Vue Store that you will enjoy using
|
|
- [Vue Macros](https://vue-macros.sxzz.moe/) - More macros and syntax sugar for Vue
|
|
- [UnoCSS](https://uno.antfu.me/) - The instant on-demand atomic CSS engine
|
|
- [Iconify](https://github.com/iconify/icon-sets#iconify-icon-sets-in-json-format) - Iconify icon sets in JSON format
|
|
- [Masto.js](https://neet.github.io/masto.js) - Mastodon API client in TypeScript
|
|
- [shiki](https://shiki.style/) - A beautiful yet powerful syntax highlighter
|
|
- [vite-plugin-pwa](https://github.com/vite-pwa/vite-plugin-pwa) - Prompt for update, Web Push Notifications and Web Share Target API
|