ToolJet is an open-source low-code framework to build and deploy internal tools with minimal engineering effort. ToolJet's drag-and-drop frontend builder allows you to create complex, responsive frontends within minutes. Additionally, you can integrate various data sources, including databases like PostgreSQL, MongoDB, and Elasticsearch; API endpoints with OpenAPI spec and OAuth2 support; SaaS tools such as Stripe, Slack, Google Sheets, Airtable, and Notion; as well as object storage services like S3, GCS, and Minio, to fetch and write data.
- Visual App Builder: 45+ built-in responsive components, including Tables, Charts, Lists, Forms, and Progress Bars.
- ToolJet Database: Built-in no-code database.
- Multi-Page: Build an application with multiple pages.
- Multiplayer editing: Allows simultaneous app building by multiple developers.
- 50+ data sources: Integrate with external databases, cloud storage, and APIs.
- Desktop & mobile: Customize layout widths to fit various screen sizes.
- Self-host: Supports Docker, Kubernetes, AWS EC2, Google Cloud Run, and more.
- Collaborate: Add comments anywhere on the canvas and tag your team members.
- Extend with plugins: Use our command-line tool to easily bootstrap new connectors.
- Version control: Manage multiple application versions with a structured release cycle.
- Run JS & Python code: Execute custom JavaScript and Python snippets.
- Granular access control: Set permissions at both group and app levels.
- Low-code: Use JS code almost anywhere within the builder, such as setting text color based on status with
status === 'success' ? 'green' : 'red'. - No-code query editors: Query Editors are available for all supported data sources.
- Join and transform data: Transform query results using JavaScript or Python code.
- Secure: All the credentials are securely encrypted using
aes-256-gcm. - Data Privacy: ToolJet serves solely as a proxy and does not store data.
- SSO: Supports multiple Single Sign-On providers.
Documentation is available at https://docs.tooljet.ai.
git clone https://github.com/ToolJet/ToolJet.git
cd ToolJet
node --version # Should output v18.18.2
npm --version # Should output v9.8.1
nvm install 18.18.2
nvm use 18.18.2
npm install -g npm@9.8.1
cp .env.example .env
PG_DB=tooljet PG_USER=tooljet_user PG_HOST=localhost PG_PASS=P@ssw0rd
If you already have Visual Studio 2022 Professional installed (as the log suggests), open the Visual Studio Installer, click "Modify" on your installation, and add the "Desktop development with C++" workload.
npm run install:plugins # Installs plugins dependencies
npm --prefix frontend install # Installs frontend dependencies
npm --prefix server install # Installs server dependencies
C:\Users\103298\AppData\Local\Programs\Python\Python313\Scripts\pip.exe install setuptools
$env:Path += ";C:\Program Files\PostgreSQL\17\bin"
npm run db:create # Creates the database structure
npm run db:migrate # Runs migrations to set up tables
npm run db:seed # Optional: Seeds initial data
npm run build:plugins:prod # Builds plugins
npm run build:frontend # Builds frontend (React app)
npm run build:server # Builds server (Node.js app)
npm run deploy
npm run start:prod
Open your browser and navigate to the TOOLJET_HOST URL (e.g., http://localhost:3000).
cd server
npm install
npm run db:migrate
createdb : The term 'createdb' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
$env:Path += ";C:\Program Files\PostgreSQL\<version>\bin"
npm install -g cross-env
"build:frontend": "cross-env NODE_ENV=production npm --prefix frontend run build"npm run build:frontend
npm --prefix server run dev
npm --prefix frontend run dev
Or for both
npm run dev