···11# Skyverse
2233A Bluesky client inspired by Nintendo's Miiverse.
44+45The project works, but is still under construction.
66+77+The client can be found at this URL : https://skyverse.social
5869## Run the project
710This project runs on Nuxt 3 (TODO upgrade to Nuxt 4).
···24272528### Components
2629All the reusable components that can be implemented into our pages.
3030+2731Every components contains the html, css and js logic on the same `.vue` file.
3232+2833`<script>` must be in Typescript.
3434+2935`<style>` must be in scss.
30363137### Pages
3238All the pages can be found in the `/pages` directory.
3939+3340Every pages contains the html, css and js logic on the same `.vue` file.
4141+3442`<script>` must be in Typescript.
4343+3544`<style>` must be in scss.
36453746### Composables
3847All the reusable functions can be found in the `/composables` directory.
39484049The files starting with `useBsky` usually communicate with the ATProto API and can be used in our views.
5050+4151The most important one is `useBskyClient.ts` which selects the client depending on the context (logged in or not) and handles the session refresh. It must be called in any composable that tries to communicate with the ATProto.
42524353The other files are utilitary functions for the project.