diff --git a/pages/_meta.json b/pages/_meta.json index dee58ce..7a66c36 100644 --- a/pages/_meta.json +++ b/pages/_meta.json @@ -1,5 +1,19 @@ { "index": "Introduction", + "-- General": { + "type": "separator", + "title": "General" + }, "features": "Features", - "technical-docs": "Technical Docs" + "-- Technical": { + "type": "separator", + "title": "Technical" + }, + "overview": "Overview", + "self-hosting": "Self Hosting", + "-- Contribute": { + "type": "separator", + "title": "Contribute" + }, + "setup-dev-environment": "Set up a dev environment" } diff --git a/pages/overview/_meta.json b/pages/overview/_meta.json new file mode 100644 index 0000000..5a1b913 --- /dev/null +++ b/pages/overview/_meta.json @@ -0,0 +1,4 @@ +{ + "infra-overview": "Infrastructure Overview", + "api-overview": "API Overview" +} diff --git a/pages/technical-docs/api-overview.mdx b/pages/overview/api-overview.mdx similarity index 100% rename from pages/technical-docs/api-overview.mdx rename to pages/overview/api-overview.mdx diff --git a/pages/technical-docs/infra-overview.mdx b/pages/overview/infra-overview.mdx similarity index 100% rename from pages/technical-docs/infra-overview.mdx rename to pages/overview/infra-overview.mdx diff --git a/pages/technical-docs/self-hosting/_meta.json b/pages/self-hosting/_meta.json similarity index 100% rename from pages/technical-docs/self-hosting/_meta.json rename to pages/self-hosting/_meta.json diff --git a/pages/technical-docs/self-hosting/configuration.mdx b/pages/self-hosting/configuration.mdx similarity index 100% rename from pages/technical-docs/self-hosting/configuration.mdx rename to pages/self-hosting/configuration.mdx diff --git a/pages/technical-docs/self-hosting/content-storage/filesystem.mdx b/pages/self-hosting/content-storage/filesystem.mdx similarity index 100% rename from pages/technical-docs/self-hosting/content-storage/filesystem.mdx rename to pages/self-hosting/content-storage/filesystem.mdx diff --git a/pages/technical-docs/self-hosting/content-storage/s3.mdx b/pages/self-hosting/content-storage/s3.mdx similarity index 100% rename from pages/technical-docs/self-hosting/content-storage/s3.mdx rename to pages/self-hosting/content-storage/s3.mdx diff --git a/pages/technical-docs/self-hosting/docker-and-kube.mdx b/pages/self-hosting/docker-and-kube.mdx similarity index 75% rename from pages/technical-docs/self-hosting/docker-and-kube.mdx rename to pages/self-hosting/docker-and-kube.mdx index 66aa290..dcbb2a6 100644 --- a/pages/technical-docs/self-hosting/docker-and-kube.mdx +++ b/pages/self-hosting/docker-and-kube.mdx @@ -27,21 +27,7 @@ git clone https://github.com/learnhouse/learnhouse cd learnhouse ``` -### Build and run the backend Docker image - - -```shell copy -docker-compose up -d -``` - -### Build and run the frontend Docker image - -#### Go to the front package - -```shell copy -cd front -``` -#### Build and run the frontend Docker image +### Build and run the backend and frontend docker images ```shell copy docker-compose up -d diff --git a/pages/technical-docs/self-hosting/organization-hosting-modes.mdx b/pages/self-hosting/organization-hosting-modes.mdx similarity index 100% rename from pages/technical-docs/self-hosting/organization-hosting-modes.mdx rename to pages/self-hosting/organization-hosting-modes.mdx diff --git a/pages/technical-docs/self-hosting/overview.mdx b/pages/self-hosting/overview.mdx similarity index 100% rename from pages/technical-docs/self-hosting/overview.mdx rename to pages/self-hosting/overview.mdx diff --git a/pages/technical-docs/self-hosting/vercel.mdx b/pages/self-hosting/vercel.mdx similarity index 100% rename from pages/technical-docs/self-hosting/vercel.mdx rename to pages/self-hosting/vercel.mdx diff --git a/pages/setup-dev-environment.mdx b/pages/setup-dev-environment.mdx new file mode 100644 index 0000000..b1ef62d --- /dev/null +++ b/pages/setup-dev-environment.mdx @@ -0,0 +1,129 @@ +import { Callout } from "nextra-theme-docs"; +import { Steps } from "nextra-theme-docs"; + +# Setting a dev environment + +This is a guide to set up a dev environment for LearnHouse, it will guide you through the installation of the backend and the frontend. + +Some parts are subject to automation in the future, making the process easier. + +## Backend configuration + + + +### Install Docker + +To install Docker, follow the instructions for your operating system on the [Docker website](https://docs.docker.com/get-docker/). + +### Get the repository + +```bash copy +git clone https://github.com/learnhouse/learnhouse +``` + +```shell copy +cd learnhouse +``` + +### Build & run the Backend + +This will build & run the backend and the database docker images + +```shell copy +docker-compose up -d +``` +### Enable install mode + +You'll need to modify the config file to enable the install mode + +```env filename="./config/config.yaml" {6-7} +site_name: LearnHouse +site_description: LearnHouse is an open-source platform tailored for learning experiences. +contact_email: hi@learnhouse.app + +general: + development_mode: true + install_mode: true +``` + + To learn more about Configuration options, please refer to the [Configuration](/self-hosting/configuration) documentation + + + + +## Frontend configuration + + + +### Init the frontend + +Go to the frontend folder + +```shell copy +cd front +``` + +This will install all the dependencies needed for the frontend + +```shell copy +npm i +``` +Add an .env file in the front folder with the following content + +```env filename="front/.env.local" {1-2} +NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false +NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=test +NEXT_PUBLIC_LEARNHOUSE_API_URL=http://localhost:1338/api/v1/ +NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=http://localhost:1338/ +NEXT_PUBLIC_LEARNHOUSE_DOMAIN=localhost:3000 +``` + + + Setting MultiOrg to true won't work locally for now, + please set it to false + + + + To learn about Organizations Hosting modes, please refer to the [Organization Hosting Modes](/self-hosting/organization-hosting-modes) documentation + + + +Run the dev environment + +```shell copy +npm run dev +``` + +### Get to the install page + +Go to [http://localhost:3000/install](http://localhost:3000/install) + +
+Hello + +
+ +## Install LearnHouse + + + +### Go through the install process + +Create your Organization, Account and roles. +### Configure your Organization as the default one + +You'll need to update the front env file to set your Organization as the default one, use the **slug** of your organization. + +```env filename="front/.env.local" {2} +NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false +NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=REPLACE_WITH_YOUR_ORG_SLUG +NEXT_PUBLIC_LEARNHOUSE_API_URL=http://localhost:1338/api/v1/ +NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=http://localhost:1338/ +NEXT_PUBLIC_LEARNHOUSE_DOMAIN=localhost:3000 +``` + +### Congratulations, you're done! 🎉 + +Visit the app at [http://localhost:3000/](http://localhost:3000/) + + \ No newline at end of file diff --git a/pages/technical-docs/_meta.json b/pages/technical-docs/_meta.json deleted file mode 100644 index 9dee774..0000000 --- a/pages/technical-docs/_meta.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "infra-overview": "Infrastructure Overview", - "api-overview": "API Overview", - "database-overview": "Database Overview", - "self-hosting": "Self Hosting" -} diff --git a/pages/technical-docs/database-overview.mdx b/pages/technical-docs/database-overview.mdx deleted file mode 100644 index a9e1fbb..0000000 --- a/pages/technical-docs/database-overview.mdx +++ /dev/null @@ -1,5 +0,0 @@ -import { Callout } from 'nextra-theme-docs' - - - This page is still work in progress. - \ No newline at end of file diff --git a/public/img/pages/dev-env/install.png b/public/img/pages/dev-env/install.png new file mode 100644 index 0000000..b8ea4ad Binary files /dev/null and b/public/img/pages/dev-env/install.png differ diff --git a/theme.config.jsx b/theme.config.jsx index 1e6d37c..2b6d4e4 100644 --- a/theme.config.jsx +++ b/theme.config.jsx @@ -24,11 +24,15 @@ export default { footer: { text: {new Date().getFullYear()} © LearnHouse., }, + sidebar: { + defaultMenuCollapseLevel: 1, + }, useNextSeoProps() { return { titleTemplate: "%s – LearnHouse Docs", canonical: "https://docs.learnhouse.app", description: "The next-gen open source learning software", + openGraph: { type: "website", locale: "en_US",