Thank you for your time and interest in contributing to the Readapt project. Any contribution, either creating a bug report or coding is welcome!
Before continuing, please read our Contributor Code of Conduct to make our community respectful and welcoming for everyone.
In this guide, you'll find helpful information on how to create issues, setup your development environment, and understand the technology stack used in the Readapt project.
A good way to start contributing to Readapt is to create an issue: a bug report or a feature suggestion.
When creating an issue for a bug report, it's advisable to structure the issue into 4 main parts.
- Brief Description: describe shorty the bug you've encountered;
- Actual Behavior: describe in more detail the buggy behavior. Reproduction steps, photos, and/or videos are welcome;
- Expected Behavior: how the application should work if the bug wasn't present;
- Logs: if you have access, share error logs. For example screenshots of errors in the console;
- Environment: give information about the environment where the application runs: application version, browser name and version, OS name and version, and any other information that you deem relevant.
Feature ideas are great because they increase the value of Readapt for its users.
Please include the following information in a feature suggestion issue:
- Description: describe your idea;
- User benefits: how the user benefits from this feature;
- Existing solutions: if another application has implemented the suggested feature already, please share that application.
If you are a software developer and you'd like to implement the feature by yourself — you're welcome! But before jumping into the code, it's highly advisable to create a feature idea first to discuss it with us.
Readapt repository is a lerna-based monorepo consisting of packages and apps.
Here are the steps you need to perform to setup your environment setup:
- Have Node.js
v16
installed (tip: nvm is a good tool to install and manage differente Node.js version); - Have
yarn
package managerv1.22.x
installed:
npm install -g yarn
- Clone the Readapt repository (or your fork of Readapt repository):
git clone [email protected]:ContentSquare/readapt.git
- Change the active directory to Readapt project:
cd ./readapt
- Install the dependencies:
yarn install
- Build local packages:
yarn build-deps
Now your development environment is ready.
After that you can:
7a. Make changes to the Chrome Extension source (documentation):
cd ./apps/chrome-extension
7b. Makes changes to the MS Word Addin source (documentation):
cd ./apps/ms-word-addin
Readapt repository is a lerna monorepo containing apps and packages.
- An app is a program that can be built and shipped to the user;
- A package is a piece of shared code used by an app or other package.
Name | Description | Depends on |
---|---|---|
@readapt/dictionaries | Language-specific dictionaries and data | - |
@readapt/settings | User settings interface | - |
@readapt/shared-components | Shared components library | @readapt/settings |
@readapt/text-engine | Text Engine | @readapt/dictionaries |
@readapt/visual-engine | Visual Engine | @readapt/text-engine @readapt/settings |
Name | Description | Link |
---|---|---|
chrome-extension | Chrome web extension | link |
ms-word-addin | MS Word Add-in | link |
The core team has made a big effort to keep the technical stack of Readapt at the latest versions:
- Vue 3 with composition API for the frontend UI
- Tailwind and DaisyUI for styling components
- TypeScript language to use the benefits of typing
- Vitejs for bundling
- Vitest for unit testing
- Featured-Sliced Design methodology is used to design the source code of apps
By contributing to Readapt, you have a wonderful opportunity to work and learn the latest technology stack.
Having questions? No problem! We're more than happy to answer them: open an issue or contact us [email protected].