From b74e23ccc0c79725d5e89feec3808abbb831782f Mon Sep 17 00:00:00 2001 From: cha0s Date: Wed, 3 Jan 2024 16:14:01 -0600 Subject: [PATCH] chore: docs ++ --- TODO.md | 3 + build/docusaurus.config.js | 4 +- website/docs/cli.mdx | 179 ++++++++++++++++++++++++++++- website/docs/configuration.mdx | 32 ++++-- website/docs/creating-flecks.mdx | 70 +++++------ website/docs/database.mdx | 86 +++++++++++--- website/docs/electron.mdx | 2 +- website/docs/gathering.mdx | 0 website/docs/installation.mdx | 30 ++++- website/docs/react.mdx | 2 +- website/docs/redux.mdx | 2 +- website/docs/repl.mdx | 2 +- website/docs/sockets.mdx | 2 +- website/pages/index.jsx | 7 +- website/static/flecks-textless.png | Bin 0 -> 67743 bytes 15 files changed, 347 insertions(+), 74 deletions(-) create mode 100644 website/docs/gathering.mdx create mode 100644 website/static/flecks-textless.png diff --git a/TODO.md b/TODO.md index 838940e..24793ff 100644 --- a/TODO.md +++ b/TODO.md @@ -31,6 +31,9 @@ - [ ] @babel/register@7.18.x has a bug - [ ] `$flecks/db/sequelize` should be `$flecks/db.sequelize` - [x] `url()` in styles breaks HMR +- [ ] 2 underscores for `FLECKS_ENV` variables +- [ ] flecks add + # Next # Webpack 5 diff --git a/build/docusaurus.config.js b/build/docusaurus.config.js index 004378f..77ecfa2 100644 --- a/build/docusaurus.config.js +++ b/build/docusaurus.config.js @@ -27,7 +27,7 @@ export default async function flecksDocusaurus() { title: 'flecks', logo: { alt: 'flecks logo', - src: 'flecks.png', + src: 'flecks-textless.png', }, items: [ { @@ -39,7 +39,7 @@ export default async function flecksDocusaurus() { }, footer: { style: 'dark', - copyright: `Copyright © ${new Date().getFullYear()} cha0s. Built with Docusaurus.`, + copyright: `Copyright © ${new Date().getFullYear()} cha0s. Built with flecks and Docusaurus.`, }, }), }; diff --git a/website/docs/cli.mdx b/website/docs/cli.mdx index 4f8cf42..80b78bc 100644 --- a/website/docs/cli.mdx +++ b/website/docs/cli.mdx @@ -1,8 +1,10 @@ --- title: Command-line interface -description: Document your project. +description: Use built-in commands and write your own. --- +import Create from '@site/helpers/create'; + # Command-line interface flecks has a command-line interface for building, linting, testing, and so much more. @@ -56,5 +58,178 @@ starter configuration will also be copied to your `build` directory, if it doesn ## Your commands You can implement your own command by implementing -[`@flecks/core.commands`](/docs/flecks/@flecks/dox/hooks#fleckscorecommands) in your fleck. +[`@flecks/core.commands`](/docs/flecks/@flecks/dox/hooks#fleckscorecommands) in your fleck. Let's +run through the process. + +### Implement @flecks/core​.commands + +First, create an application: + + + +Move into the new project and create a fleck: + + + +We're going to be creating a fortune teller command that will tell you when you will find love. +:heart_eyes: + +Edit your `build/flecks.yml` and add your new fleck: + +```yml +'@flecks/core': {} +'@flecks/server': {} +// highlight-next-line +'@cli_test/fortune:./packages/fortune/src': {} +``` + +### Create a command that takes an option + +Now, edit `packages/fortune/src/index.js` to look like this: + +```javascript +export const hooks = { + '@flecks/core.commands': () => ({ + fortune: { + options: [ + ['-n, --be-nice', 'be nice'], + ], + description: 'find your true love', + action: async ({beNice}) => { + console.log(`It will be ${Math.floor(Math.random() * 10) + 2} days until you meet your true love!`); + if (!beNice) { + console.log('You might also stub your toe.'); + } + }, + }, + }), +}; +``` + +### Inspect and invoke your command + +Now, invoke flecks like so: + +```bash +npx flecks --help +``` + +You will see among the commands listed: + +``` + fortune [options] find your true love +``` + +Run the command with the `--help` option: + +```bash +npx flecks fortune --help +``` + +You will see this output: + +``` +Usage: flecks fortune [options] + +find your true love + +Options: + -n, --be-nice be nice +``` + +Let's try it! + +```bash +npx flecks fortune --be-nice +``` + +You will see something like: + +``` +It will be 11 days until you meet your true love! +``` + +How about without our option: + +```bash +npx flecks fortune +``` + +You will see something like: + +``` +It will be 7 days until you meet your true love! +You might also stub your toe. +``` + +### Define arguments + +You can also define arguments in addition to options. Let's add an argument that takes the user's +name to personalize the output: + +```javascript +export const hooks = { + // highlight-start + '@flecks/core.commands': (program, flecks) => { + const {Argument} = flecks.fleck('@flecks/core/server'); + return { + // highlight-end + fortune: { + // highlight-start + args: [ + new Argument('[name]', 'your name') + ], + // highlight-end + options: [ + ['-n, --be-nice', 'be nice'], + ], + description: 'find your true love', + // highlight-next-line + action: async (name = 'person', {beNice}) => { + // highlight-next-line + console.log(`Hey, ${name}. It will be ${Math.floor(Math.random() * 10) + 2} days until you meet your true love!`); + if (!beNice) { + console.log('You might also stub your toe.'); + } + }, + }, + // highlight-start + }; + }, + // highlight-end +}; +``` + +Notice that we added the argument to... the arguments. + +Try it again: + +```bash +npx flecks fortune --be-nice +``` + +You will see e.g.: + +``` +Hey, person. It will be 7 days until you meet your true love! +``` + +That's because we set the default name to `'person'` in the code above. Let's try passing in a +name: + +```bash +npx flecks fortune cha0s +``` + +Now the output looks like: + +``` +Hey, cha0s. It will be 7 days until you meet your true love! +You might also stub your toe. +``` + +### Going further + +flecks uses [Commander.js](https://github.com/tj/commander.js#quick-start) under the hood to build its CLI. +It might be worth checking out their documentation for any more advanced usage. diff --git a/website/docs/configuration.mdx b/website/docs/configuration.mdx index 34da021..dac0b7d 100644 --- a/website/docs/configuration.mdx +++ b/website/docs/configuration.mdx @@ -1,20 +1,30 @@ --- title: Configuration -description: Configure `flecks.yml` and your application. +description: Configure `build/flecks.yml` and your application. --- import InstallPackage from '@site/helpers/install-package'; -You have a flecks application! ...but it doesn't do much. This is because a flecks application is -composed of individual flecks. By default, your application will have two flecks: `@flecks/core` and -`@flecks/server`. Each fleck may have configuration that can be set through `flecks.yml`. For a -list of configurable core flecks, see [the generated configuration page](/docs/flecks/@flecks/dox/config). +# Configuration -## First steps +You have a flecks application! ...but it doesn't do much. This is because a flecks application is +composed of individual flecks and by default, your application will have only two flecks: +`@flecks/core` and `@flecks/server`. Your `build/flecks.yml` file will look like this: + +```yml +'@flecks/core': {} +'@flecks/server': {} +``` + +Each fleck may have configuration that can be set through `build/flecks.yml`. +For a deep dive of configurable core flecks, see +[the generated configuration page](/docs/flecks/@flecks/dox/config). + +## `build/flecks.yml` A good first configuration step is to set the ID of your application. -Your `flecks.yml` will look like this after you generate your application: +Your `build/flecks.yml` will look like this after you generate your application: ```yml '@flecks/core': {} @@ -22,7 +32,7 @@ Your `flecks.yml` will look like this after you generate your application: ``` Your application's ID is configured at the `id` key of `@flecks/core`'s configuration. To set your -application's ID to `hello_world`, update your `flecks.yml` to look like this: +application's ID to `hello_world`, update your `build/flecks.yml` to look like this: ```yml // highlight-start @@ -32,10 +42,10 @@ application's ID to `hello_world`, update your `flecks.yml` to look like this: '@flecks/server': {} ``` -## Getting somewhere +## Adding more If you were studious enough to take a peek at [the generated configuration page](/docs/flecks/@flecks/dox/config) -above, you may have noticed that there were a bunch more flecks there than just the two in our +above, you may have noticed that there were a lot more flecks there than just the two in our application. For instance, there is a `@flecks/web` fleck that turns your little old server application into one @@ -45,7 +55,7 @@ that can build and serve a webpage. You can add it to your application in two st -2. Add the fleck to your `flecks.yml`: +2. Add the fleck to your `build/flecks.yml`: ```yml '@flecks/core': diff --git a/website/docs/creating-flecks.mdx b/website/docs/creating-flecks.mdx index cf05505..5b5485f 100644 --- a/website/docs/creating-flecks.mdx +++ b/website/docs/creating-flecks.mdx @@ -3,6 +3,7 @@ title: Creating a fleck description: A fleck is a module but also so much more. --- +import Create from '@site/helpers/create'; import InstallPackage from '@site/helpers/install-package'; So you want to create a fleck. Think you got what it takes? @@ -40,20 +41,24 @@ If you are following along from the previous getting started Let's make your website greet the user with a good ol' **hello world**. -To do this, you'll be creating your own little fleck. You'll create the fleck at `src/hello-world`. -A fleck is just a package, so we'll need to add a `package.json`. Nothing much; a name will suffice: +To do this, you'll be creating your own little fleck. flecks also provides a built-in utility to +create a fleck. -### `package.json` +:::note -```json -{ - "name": "hello-world", -} -``` +You may have noticed that your little starter application has a `packages` directory. By default, +flecks structures your application as a monorepo. -and we'll add our little source file: +This isn't any hard requirement, it's only a suggestion. -### `index.js` +::: + +Let's create our little fleck: + + + +After some output, you'll find your new fleck at `packages/say-hello`. There is a source file at +`packages/say-hello/src/index.js` but for now it's empty. Let's fill it out a bit: ```javascript exports.hooks = { @@ -63,16 +68,7 @@ exports.hooks = { }; ``` -You should now have a `src` directory that looks like this: - -``` -src -└── hello-world - ├── index.js - └── package.json -``` - -Good? Good! Now, let's add this to our `flecks.yml`: +Good? Good! Now, let's add this to our `build/flecks.yml`: ```yml '@flecks/core': @@ -80,7 +76,7 @@ Good? Good! Now, let's add this to our `flecks.yml`: '@flecks/server': {} '@flecks/web': {} // highlight-next-line -'hello-world:./src/hello-world': {} +'@hello-world/say-hello:./packages/say-hello/src': {} ``` ### Aliasing for the win @@ -91,21 +87,26 @@ path to the package. Now, restart your application and visit your website. Glorious, isn't it? -By the way, your other application code can import the alias (e.g. `require('hello-world');`) +By the way, your other application code can import using the alias (e.g. +`require('@hello-world/say-hello');`) [as if it were a package](https://webpack.js.org/configuration/resolve/#resolvealias).
Wait, my flecks don't have to be in node_modules? - Nope! That's an intentional feature. When you're developing applications, it can be real nice to + Nope! When you're developing applications, it can be real nice to just pull in local source "packages". If you're wondering how this works, see [the alias concept page](#todo). You probably shouldn't do things like name an alias the same thing as a package that actually - exists in your `node_modules` directory. If you'd like to help define what happens in that case - you could always [submit a pull request](https://github.com/cha0s/flecks/compare). + exists in your `node_modules` directory. This is mitigated if you use the default monorepo + structure (unless your application name is identical to a monorepo organization that already + exists on `npm`: don't do that). - That being said, sharing your package on npm is a cool thing to do, so be rad and share your + If you'd like to help define what happens in these edge cases you could + always [submit a pull request](https://github.com/cha0s/flecks/compare). :smile: + + That being said, sharing your packages on npm is a cool thing to do, so be rad and share your awesome flecks with the rest of us!
@@ -116,7 +117,7 @@ application inside of an instance of [Electron](https://www.electronjs.org/). Yo -Then you'll update your `flecks.yml` like so: +Then you'll update your `build/flecks.yml` like so: ```yml '@flecks/core': @@ -130,18 +131,23 @@ Then you'll update your `flecks.yml` like so: - '@flecks/electron' // highlight-end '@flecks/web': {} -'hello-world:./src/hello-world': {} +'@hello-world/say-hello:./packages/say-hello/src': {} ``` ### ~~flecking~~ pecking order Did you notice we added some configuration to `@flecks/server`? The `up` key configures the order in -which flecks are initialized when the server comes up. We make sure `@flecks/web` initializes -before `@flecks/electron` so there's a webpage to visit. There are future plans to make this the -default with no configuration required. +which flecks are initialized when the server comes up. We make sure `@flecks/web` serves a webpage +before `@flecks/electron` tries to visit it. + +:::note + +There are future plans to make this the default with no configuration required. + +::: Finally `npm start` and you should see something like this: ![An image of our simple hello world application running inside an Electron window](./flecks-electron.png) -Cool, huh? +Isn't it beautiful? :relieved: diff --git a/website/docs/database.mdx b/website/docs/database.mdx index eaf989a..4c6e304 100644 --- a/website/docs/database.mdx +++ b/website/docs/database.mdx @@ -1,6 +1,6 @@ --- title: Database -description: How to define models and connect to a database. +description: Define models and connect to a database. --- import Create from '@site/helpers/create'; @@ -9,7 +9,7 @@ import InstallPackage from '@site/helpers/install-package'; # Database flecks provides database connection through [Sequelize](https://sequelize.org/) and database -server instances through either flat SQLite databases or [Docker](https://www.docker.com/)ized +server instances through either flat SQLite databases or [Docker](https://www.docker.com/)-ized database servers. ## Install and configure @@ -24,7 +24,7 @@ Now in your new application directory, install `@flecks/db`: Then, add the fleck to your `build/flecks.yml`: -```yml +```yml title="build/flecks.yml" '@flecks/core': {} // highlight-next-line '@flecks/db': {} @@ -57,7 +57,7 @@ First, create a fleck in your application: Then, add it to `build/flecks.yml`: -```yml +```yml title="build/flecks.yml" '@flecks/core': {} '@flecks/db': {} '@flecks/server': {} @@ -67,7 +67,7 @@ Then, add it to `build/flecks.yml`: Now, let's hop into `packages/tags/src/index.js` and add a hook implementation: -```javascript +```javascript title="packages/tags/src/index.js" export const hooks = { '@flecks/db/server.models': (flecks) => { const {Model, Types} = flecks.fleck('@flecks/db/server'); @@ -116,10 +116,61 @@ Now, `npm start` your application and you will see that line looks different: @flecks/core/flecks gathered '@flecks/db/server.models': [ 'Tags' ] +0ms ``` -Our model is recognized! Let's do something with it. Edit `packages/tags/src/index.js` again like +Our model is recognized! + +## Gathering models + +If we stuff all of our models into that file, things are going to start getting unwieldy. Let's +create a `src/models` directory in our `packages/tags` fleck and add a `tags.js` source file with the following +code: + +```javascript title="packages/tags/src/models/tags.js" +export default (flecks) => { + const {Model, Types} = flecks.fleck('@flecks/db/server'); + return class Tags extends Model { + static get attributes() { + return { + key: { + type: Types.STRING, + allowNull: false, + }, + value: { + type: Types.STRING, + allowNull: false, + }, + }; + } + }; +} +``` + +Notice that this looks very similar to how we defined the model above, but this time we're only +returning the class. + +Now, hop over to `src/index.js` and let's rewrite the hook implementation: + +```javascript title="packages/tags/src/index.js" +export const hooks = { + '@flecks/db/server.models': Flecks.provide(require.context('./models')), +} +``` + +We're passing the path to our models directory to `require.context` which is then passed to +`Flecks.provide`. This is completely equivalent to our original code, but now we can add more +models and keep things tidy. + +:::info + +For a more detailed treatment of gathering in flecks, see [the gathering guide](#todo). + +::: + +## Working with models + +Let's do something with it. Edit `packages/tags/src/index.js` again like so: -```javascript +```javascript title="packages/tags/src/index.js" export const hooks = { // highlight-start '@flecks/server.up': async (flecks) => { @@ -127,9 +178,7 @@ export const hooks = { console.log('There were', await Tags.count(), 'tags.'); }, // highlight-end - '@flecks/db/server.models': (flecks) => { - // Omitted for clarity... - }, + '@flecks/db/server.models': Flecks.provide(require.context('./models')), } ``` @@ -141,7 +190,7 @@ There were 0 tags. Not very interesting. Let's add some, but only if there aren't any tags yet: -```javascript +```javascript title="packages/tags/src/index.js" export const hooks = { '@flecks/server.up': async (flecks) => { const {Tags} = flecks.get('$flecks/db.models'); @@ -154,9 +203,7 @@ export const hooks = { console.log('There are', await Tags.count(), 'tags.'); // highlight-end }, - '@flecks/db/server.models': (flecks) => { - // Omitted for clarity... - }, + '@flecks/db/server.models': Flecks.provide(require.context('./models')), } ``` @@ -179,7 +226,7 @@ This means that the database will only persist as long as the life of your appli restart it, you'll get a fresh new database every time. Obviously, this isn't very helpful for any real purpose. Let's make a change to our `build/flecks.yml`: -```yml +```yml title="build/flecks.yml" '@flecks/core': {} '@flecks/db': {} // highlight-start @@ -240,7 +287,7 @@ Let's add another fleck to our project: Configure `build/flecks.yml`: -```yml +```yml title="build/flecks.yml" '@flecks/core': {} '@flecks/db': {} // highlight-start @@ -358,7 +405,7 @@ Then, take a look in the `dist` directory. You'll see a file there called `docke `@flecks/docker` automatically emits this file when you build your application for production to make container orchestration easier. Let's take a look: -```yml +```yml title="dist/docker-compose.yml" version: '3' services: flecks_app: @@ -393,3 +440,8 @@ docker-compose -f dist/docker-compose.yml up This demonstrates that your application is now being orchestrated by Docker Compose and is chugging right along! + +## Going further + +`@flecks/db` uses Sequelize under the hood. You can dive into +[their documentation](https://sequelize.org/docs/v6/getting-started/) to learn even more. diff --git a/website/docs/electron.mdx b/website/docs/electron.mdx index 3d9ca81..a8da18c 100644 --- a/website/docs/electron.mdx +++ b/website/docs/electron.mdx @@ -1,4 +1,4 @@ --- title: Electron -description: How to run your application in Electron and build for distribution. +description: Run your application in Electron and build for distribution. --- diff --git a/website/docs/gathering.mdx b/website/docs/gathering.mdx new file mode 100644 index 0000000..e69de29 diff --git a/website/docs/installation.mdx b/website/docs/installation.mdx index 34d8867..738af2e 100644 --- a/website/docs/installation.mdx +++ b/website/docs/installation.mdx @@ -1,6 +1,32 @@ --- title: Installation -description: How to get started with your first flecks project +description: How to get started with your first flecks project. --- -This is some text. +import Create from '@site/helpers/create'; + +# Installation + +The first step toward creating an application with flecks is to use the built-in +creation utility: + + + +## Start your application + +Now, move into your new project directory and run `npm start`. You'll see a bunch of output, but the +important thing is the last line: + +``` + @flecks/server/entry up! +7ms +``` + +That means we've got an application up and running! + +## Do something interesting + +The only problem is that it doesn't do a single +thing except sit there. Let's get into how to configure our application to do something interesting +and start working on creating a fleck of our own. + + diff --git a/website/docs/react.mdx b/website/docs/react.mdx index 0270647..1274970 100644 --- a/website/docs/react.mdx +++ b/website/docs/react.mdx @@ -1,4 +1,4 @@ --- title: React -description: How to define a root component, enable, SSR, and more. +description: Define root components, enable SSR, and more. --- diff --git a/website/docs/redux.mdx b/website/docs/redux.mdx index 4eb6425..2eb45ba 100644 --- a/website/docs/redux.mdx +++ b/website/docs/redux.mdx @@ -1,4 +1,4 @@ --- title: Redux -description: How to define your reducers and state. +description: Define your actions, reducers, and state. --- diff --git a/website/docs/repl.mdx b/website/docs/repl.mdx index 732972f..87c7c76 100644 --- a/website/docs/repl.mdx +++ b/website/docs/repl.mdx @@ -1,4 +1,4 @@ --- title: REPL -description: How to start a REPL server and connect to it. +description: Start a REPL server and connect to it. --- diff --git a/website/docs/sockets.mdx b/website/docs/sockets.mdx index b80e45b..43da49e 100644 --- a/website/docs/sockets.mdx +++ b/website/docs/sockets.mdx @@ -1,4 +1,4 @@ --- title: Sockets -description: How to run a websocket server and define packets. +description: Run a websocket server and define packets. --- diff --git a/website/pages/index.jsx b/website/pages/index.jsx index 4c693d7..eab546f 100644 --- a/website/pages/index.jsx +++ b/website/pages/index.jsx @@ -11,16 +11,17 @@ function HomepageHeader() { return (
+ - {siteConfig.title} + Craft modular apps with ease -

{siteConfig.tagline}

+

Uncomplicated, efficient, and customizable

- Your documentation here + Get started
diff --git a/website/static/flecks-textless.png b/website/static/flecks-textless.png new file mode 100644 index 0000000000000000000000000000000000000000..5b7158fa60f542bb56699885de0ade8a6b6c85eb GIT binary patch literal 67743 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 literal 0 HcmV?d00001