-
Notifications
You must be signed in to change notification settings - Fork 0
feat: Add community projects page #121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Krzemien97
wants to merge
35
commits into
development
Choose a base branch
from
feat/community-projects
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+975
−2
Open
Changes from all commits
Commits
Show all changes
35 commits
Select commit
Hold shift + click to select a range
7cb037c
Add community projects to the config
Krzemien97 b3bb5e9
Add dummy files for testing & eject some components
Krzemien97 cb002f1
Add AI generated projects for mockups
Krzemien97 a62d1d6
Initial card layout for community projects
Krzemien97 a3b5069
Use correct filepath naming
Krzemien97 9439454
Minor card fixes
Krzemien97 2278d0b
Use content as description
Krzemien97 32ae21c
Add company info display
Krzemien97 a63639f
Add tags.yml
Krzemien97 e700a4d
Card layout adjustments
Krzemien97 5edb738
Add hook for getting community project metadata
Krzemien97 22633ec
Modify blog post page to include company logo
Krzemien97 ce87a13
Add tags comments
Krzemien97 3c20d28
Add tutorial how to add community project
Krzemien97 06ae204
Add license
Krzemien97 f30816a
Update copyright year in LICENSE file to 2026
Krzemien97 d2877fa
Add license notice
Krzemien97 f77fb67
Reformat
Krzemien97 19f18ee
Add scripts to check community project frontmatter
Krzemien97 4d62d25
Remove AI files (except one)
Krzemien97 2bc73b5
Reformat
Krzemien97 d5a8a0a
Apply review comments
Krzemien97 0c63e2c
Typo
Krzemien97 242d6bd
Unify file naming to kebab-case
Krzemien97 e118027
Cleanup component names & update paths
Krzemien97 07ee636
Fix paths in the guide
Krzemien97 61e53e9
Remove the last AI file & add template
Krzemien97 d44ce84
Formatting
Krzemien97 39d1a62
Throw on new tags
Krzemien97 ae486c3
Add placeholder community project
Krzemien97 cf0d87e
Formatting
Krzemien97 477b0a7
Add a section about branching
Krzemien97 3b27f10
Apply review comments
Krzemien97 03216dc
Add CommunityProjectsTags component and implement tag extraction logic
Krzemien97 b56c1fd
Change guide to mention creating forks instead of branches
Krzemien97 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| MIT License | ||
|
|
||
| Copyright (c) 2026 Fictionlab sp. z o.o. | ||
|
|
||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
|
|
||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
|
|
||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| --- | ||
| title: My Community Project (max 60 characters) | ||
| description: A brief description of my community project, up to 160 characters. | ||
| authors: | ||
| - name: Author Name | ||
| title: Author Title | ||
| url: https://author-personal-website.com | ||
| image_url: /img/community-projects/author-image.jpg | ||
| socials: | ||
| x: author_x_handle | ||
| github: author_github_handle | ||
| linkedin: author_linkedin_handle | ||
| email: author_email_address | ||
| tags: [tag1, tag2, tag3] | ||
| image: /img/community-projects/project-image.jpg | ||
| company: | ||
| name: Company Name | ||
| url: https://company-website.com | ||
| logo_url: /img/community-projects/company-logo.jpg | ||
| --- | ||
|
|
||
| {/* To see how to use this template, refer to the https://docs.fictionlab.pl/guidelines/add-community-project */} | ||
|
|
||
| # [Community project title] | ||
|
|
||
| [Short description of the community project, displayed on the Community Projects | ||
| page, up to 400 characters.] | ||
|
|
||
| {/* truncate */} | ||
|
|
||
| [Main content of the community project page, including detailed information | ||
| about the project, its features, implementation details, and any other relevant | ||
| information. You can use markdown syntax to format the content, add images, | ||
| links, and other media as needed.] | ||
|
|
||
| {/* Example content */} | ||
|
|
||
| ## Project Overview | ||
|
|
||
| Short introduction to the project, its goals, and the problem it aims to solve. | ||
|
|
||
| ## Key Features | ||
|
|
||
| List of the main features of the project, with brief descriptions for each. | ||
|
|
||
| ## Resources | ||
|
|
||
| Links to any relevant resources, such as the project repository, documentation, | ||
| or related articles. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| --- | ||
jasiex01 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| title: Delete after adding first community project | ||
| description: | ||
| Temporary placeholder for the first community project. Please refer to the | ||
| https://docs.fictionlab.pl/guidelines/add-community-project for instructions | ||
| on how to add a new community project. | ||
| authors: | ||
| - name: Author Name | ||
| title: Author Title | ||
| url: https://author-website.com | ||
jasiex01 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| image_url: /img/community-projects/author-image.jpg | ||
| socials: | ||
| x: author_x_handle | ||
| github: author_github_handle | ||
| linkedin: author_linkedin_handle | ||
| email: author_email_address | ||
| image: /img/community-projects/project-image.jpg | ||
| tags: [leo-rover] | ||
| company: | ||
| name: Company Name | ||
| url: https://company-website.com | ||
| logo_url: /img/community-projects/company-logo.jpg | ||
| --- | ||
|
|
||
| {/* To see how to use this template, refer to the https://docs.fictionlab.pl/guidelines/add-community-project */} | ||
|
|
||
| [Short description of the community project, displayed on the Community Projects | ||
| page, up to 400 characters.] | ||
|
|
||
| {/* truncate */} | ||
|
|
||
| [Main content of the community project page, including detailed information | ||
| about the project, its features, implementation details, and any other relevant | ||
| information. You can use markdown syntax to format the content, add images, | ||
| links, and other media as needed.] | ||
|
|
||
| {/* Example content */} | ||
|
|
||
| ## Project Overview | ||
|
|
||
| Short introduction to the project, its goals, and the problem it aims to solve. | ||
|
|
||
| ## Key Features | ||
|
|
||
| List of the main features of the project, with brief descriptions for each. | ||
|
|
||
| ## Resources | ||
|
|
||
| Links to any relevant resources, such as the project repository, documentation, | ||
| or related articles. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| # Robotic platform related tags | ||
|
|
||
| leo-rover: | ||
| label: Leo Rover | ||
| description: Projects related to the Leo Rover robotic platform. | ||
| permalink: 'leo-rover' | ||
|
|
||
| raph-rover: | ||
| label: Raph Rover | ||
| description: Projects related to the Raph Rover robotic platform. | ||
| permalink: 'raph-rover' | ||
|
|
||
| # Application area tags | ||
|
|
||
| # TBD |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,239 @@ | ||
| --- | ||
| title: How to add a community project | ||
| sidebar_label: Adding a community project | ||
| sidebar_position: 4 | ||
| unlisted: true | ||
| description: >- | ||
| This page provides guidelines on how to add a community project to the | ||
| Fictionlab documentation. | ||
| --- | ||
|
|
||
| This page provides guidelines on how to add a community project to the | ||
| Fictionlab documentation. Community projects are third-party projects developed | ||
| by the Fictionlab community that enhance or extend the functionality of | ||
| Fictionlab products like Leo or Raph rover. | ||
|
|
||
| Community project list is located in the | ||
| [Community Projects](/community-projects) page. | ||
|
|
||
| :::note | ||
|
|
||
| Before adding a community project, ensure that it meets the following criteria: | ||
|
|
||
| - The project is based on Fictionlab products or integrates with them. | ||
|
|
||
| Fictionlab can remove any community project at any time without prior notice if | ||
| it does not meet the guidelines or is deemed inappropriate. | ||
|
|
||
| ::: | ||
|
|
||
| ## Before you begin | ||
|
|
||
| Before adding a community project, check | ||
| [documentation repository](https://github.com/fictionlab/docs) to check how to | ||
| start adding new content. If you are not familiar with using GitHub and | ||
| Markdown/MDX files, please refer to the following resources: | ||
|
|
||
| - [GitHub Docs - Getting started with GitHub](https://docs.github.com/en/get-started/quickstart) | ||
| - [Markdown Guide - Getting started with Markdown](https://www.markdownguide.org/getting-started/) | ||
| - [Docusaurus Docs - Markdown Features](https://docusaurus.io/docs/markdown-features) | ||
|
|
||
| ### Custom Fictionlab's components | ||
|
|
||
| Fictionlab documentation uses custom React components to enhance the content and | ||
| provide additional functionality. To see a list of available components, visit | ||
| the [Components](/guidelines/components) page. | ||
|
|
||
| ## Creating a community project entry | ||
|
|
||
| ### Prepare your workspace on a separate fork | ||
|
|
||
| All community project pages need be created on the separate forks of the | ||
| Fictionlab documentation repository. Creating a separate fork allows you to work | ||
| on your community project entry without affecting the main repository until you | ||
| are ready to submit a pull request. It also allows for better collaboration and | ||
| version control of your changes. | ||
|
|
||
| To create a fork, click the "Fork" button at the top right corner of the | ||
| repository page on GitHub. This will create a copy of the repository under your | ||
| GitHub account where you can make your changes. More information on how to fork | ||
| a repository can be found in the | ||
| [Fork a repository - Github Docs](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo). | ||
|
|
||
| When you are ready to submit your community project, you can create a pull | ||
| request from your fork to the main repository. After the pull request is | ||
| reviewed and approved by the Fictionlab team, your community project will be | ||
| merged and queued for release in the next documentation update. | ||
|
|
||
| :::tip | ||
|
|
||
| Check the | ||
| [Getting Started](https://github.com/fictionlab/docs?tab=readme-ov-file#getting-started) | ||
| section in the documentation repository's README for more information on how to | ||
| setup your local workspace from the scratch. | ||
|
|
||
| ::: | ||
|
|
||
| ### Create the MDX file | ||
|
|
||
| To add a community project to the Fictionlab documentation, create a new MDX | ||
| file in the `community-projects/` directory of this repository. Each community | ||
| project should have its own MDX file named after the project (e.g., | ||
| `my-community-project.mdx`). | ||
Krzemien97 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| ### Front matter | ||
|
|
||
| Each community project page should include the front matter data at the top of | ||
| the MDX file. It allows proper indexing and display of the project on the | ||
| Community Projects page. | ||
|
|
||
| :::info | ||
|
|
||
| Some of the fields requires providing image_url or logo_url. All images should | ||
| be placed in the `/static/img/community-projects` directory of this repository. | ||
|
|
||
| ::: | ||
|
|
||
| Below is the list of required front matter fields: | ||
|
|
||
| - `title` | ||
| - `description` | ||
| - `authors` | ||
| - `tags` | ||
| - `image` | ||
| - `company` | ||
|
|
||
| :::tip | ||
|
|
||
| To see how each of the front matter fields should be structured, refer to the | ||
| documentation of the docusaurus: | ||
|
|
||
| - [Docusaurus Docs - Front matter](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog#markdown-front-matter) | ||
| - [Docusaurus Docs - Inline authors](https://docusaurus.io/docs/blog#inline-authors) | ||
| ::: | ||
|
|
||
| Example front matter: | ||
|
|
||
| ```yml | ||
| --- | ||
| title: Automated Plant Watering System | ||
| description: | ||
| An IoT-based automated plant watering system using Leo Rover and soil moisture | ||
| sensors. | ||
| authors: | ||
| - name: John Doe | ||
| title: Lead Developer | ||
| url: https://johndoe-website.com | ||
| image_url: /img/community-projects/automated-plant-watering/johndoe.jpg | ||
| socials: | ||
| x: johnDoe | ||
| github: johndoe | ||
| linkedin: johndoe | ||
| email: johndoe@example.com | ||
| tags: [leo-rover] | ||
| image: /img/community-projects/automated-plant-watering/project-image.jpg | ||
| company: | ||
| name: GreenTech Solutions | ||
| url: https://greentech-solutions.com | ||
| logo_url: /img/community-projects/automated-plant-watering/greentech-logo.jpg | ||
| --- | ||
| ``` | ||
|
|
||
| #### Front matter fields description | ||
|
|
||
| - `title`: The title of the community project (max 100 characters). | ||
Krzemien97 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| - `description`: A brief description of the community project (max 160 | ||
| characters). | ||
| - `tags`: A list of tags relevant to the project (e.g., leo-rover). Please note | ||
| that only tags mentioned in the | ||
| [Community projects tags](/community-projects/tags) page should be used. | ||
| - `image`: The URL or path of the image representing the community project. It | ||
| will be displayed on the Community Projects page. | ||
| - `authors`: A list of authors who contributed to the project. It is possible to | ||
| add multiple authors by adding more entries to the list. Each author entry | ||
| should include the following fields: | ||
| - `name`: The author's name. | ||
| - `title`: The author's title or role. | ||
| - `url`: The URL to the author's personal or professional website. | ||
| - `image_url`: The URL or path to the author's image. | ||
| - `socials`: A list of social media handles for the author (e.g., x, github, | ||
| linkedin, email). | ||
| - `company`: Information about the company or organization associated with the | ||
| project, including: | ||
| - `name`: The company's name. | ||
| - `url`: The URL to the company's website. | ||
| - `logo_url`: The URL or path to the company's logo image. | ||
|
|
||
| :::tip | ||
|
|
||
| Check existing community project pages in the `/community-projects` directory | ||
| for examples of how to structure the front matter and content. | ||
|
|
||
| ::: | ||
|
|
||
| ### Content structure | ||
|
|
||
| #### Summary | ||
|
|
||
| After the front matter, provide a short summary of the community project. This | ||
| section should give an overview of the project's purpose and main features. It | ||
| should have around 300-400 characters. | ||
|
|
||
| #### Truncate tag | ||
|
|
||
| To control the length of the project preview on the Community Projects page, use | ||
| the `{/* truncate */}` tag after the summary. Content after this tag will not be | ||
| displayed in the preview. | ||
|
|
||
| #### Main content | ||
|
|
||
| In this section provide detailed information about the community project. You | ||
| can structure this section using headings, subheadings, lists, images, and code | ||
| snippets as needed. We do not enforce a specific structure for this section. | ||
|
|
||
| #### Resources | ||
|
|
||
| As final step, you can provide links to additional resources related to the | ||
| community project, such as: | ||
|
|
||
| - GitHub repository | ||
| - Documentation | ||
| - Tutorials | ||
| - Videos | ||
| - Blog posts | ||
|
|
||
| and any other relevant materials. | ||
|
|
||
| ## Submitting the community project | ||
|
|
||
| :::info | ||
|
|
||
| Test your MDX file locally using Docusaurus to ensure that it renders correctly | ||
| before submitting it as a pull request. Instructions for setting up a local | ||
| Docusaurus environment can be found in the | ||
| [Testing implemented changes](https://github.com/fictionlab/docs?tab=readme-ov-file#testing-implemented-changes) | ||
| section of the documentation repository's README. | ||
|
|
||
| ::: | ||
|
|
||
| Once you have created the MDX file for your community project, submit it as a | ||
| pull request to the Fictionlab documentation repository. Ensure that your pull | ||
| request includes the new MDX file in the `/community-projects` directory. | ||
|
|
||
| :::note | ||
|
|
||
| Fictionlab team will review the submitted community project to ensure it meets | ||
| the guidelines and quality standards. They may request changes or additional | ||
| information before approving the pull request. | ||
|
|
||
| ::: | ||
|
|
||
| After the pull request is reviewed and approved, your community project will be | ||
| added to the Fictionlab documentation and will appear on the Community Projects | ||
| page. | ||
|
|
||
| ## License Information | ||
|
|
||
| All committed changes will be licensed under the terms specified in the LICENSE | ||
| file added to the repository. Please ensure that your contributions comply with | ||
| this license. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.