Hadmean is an internal tool generator. It is language agnostic, schema driven, extremely customizable, featured packed, user-friendly and has just one installation step.

Overview

Logo


Project license Pull Requests welcome

Table of Contents

About

Hadmean is a no-code, internal tool generator. It is language agnostic, schema driven, extremely customizable, fully featured, user-friendly and has just one installation step.

Quick Demo

Hadmean.-.Intro.mp4

Motivation

There are plenty of admin projects out there usually free or paid.

The free ones are usually tied to a framework and all your experience with it is useless when you hop to your next shiny language. They are usually not aesthetically pleasing and always require a developer to make any change

The paid ones are usually good but very restricted as their free version are usually demo plans for you to get a taste of what they can do and you will have to get to the paywall to get to be usable for your day to day

The primary reason to build Hadmean was to build something that will be free and very usable and language agnostic

Why you should try Hadmean

  • It is free
  • Easiest installation, Just one command to install and run
  • You will always be running the latest version
  • The little learning curve with truly less than 5% technical knowledge requirement
  • Tons of features
  • Language/framework agnostic
  • Lastly, It is open source, It doesn't get more customizable than that

Getting Started

Prerequisites

  • Node.js
  • Supported database (MySQL, Postgres, MsSQL, SQLite)

Installation

$ cd <project_name>

$ npx hadmean@latest

That is all, You will be able to see the application on http://localhost:3000

Features

  • Authentication
  • Role and Permissions
  • Rich text editor
  • Users management
  • Deep navigation
  • CRUD
  • Data Count
  • Relationships
  • Synced DB Validation
  • Fields selection/ ordering
  • Cache configurations
  • Credentials Storage
  • Forms fields customization
  • Automatic Introspection
  • Selection Colors
  • Form validation
  • Powerful Filters

Roadmap

See the open issues for a list of proposed features (and known issues).

Support

Reach out to the maintainer at one of the following places:

Project assistance

If you want to say thank you or/and support the active development of Hadmean:

  • Add a GitHub Star to the project.
  • Tweet about Hadmean.
  • Write interesting articles about Hadmean on Dev.to, Medium or your personal blog.

Together, we can make Hadmean better!

Contributing

First off, thanks for taking the time to contribute! Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.

Please read our contribution guidelines, and thank you for being involved!

Authors & contributors

The original setup of this repository is by Ayobami Akingbade.

For a full list of all authors and contributors, see the contributors page.

Security

Hadmean takes security at heart and follows all known good practices of security, but 100% security cannot be assured. Hadmean is provided "as is" without any warranty.

For more information and to report security issues, please refer to our security documentation.

Built With

License

This project is licensed under the GNU General Public License v3.

See LICENSE for more information.

Comments
  • bug: Can't start the project

    bug: Can't start the project

    Bug Report

    Hadmean version: latest on npm? and master on git

    Current behavior:

    I tried to run: npx hadmean But it seems to fail silently, and my folder is empty. Log below:

    $ npx hadmean
    Need to install the following packages:
      [email protected]
    Ok to proceed? (y) y
    npm WARN ERESOLVE overriding peer dependency
    npm WARN ERESOLVE overriding peer dependency
    npm WARN ERESOLVE overriding peer dependency
    npm WARN deprecated @npmcli/[email protected]: This functionality has been moved to @npmcli/fs
    

    So instead of that, I tried to clone the repo to run it locally that way. But npm i fails.

    $ npm i
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE unable to resolve dependency tree
    npm ERR!
    npm ERR! While resolving: [email protected]
    npm ERR! Found: [email protected]
    npm ERR! node_modules/react
    npm ERR!   react@"18.1.0" from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! peer react@"^16.8.0 || ^17.0.0" from [email protected]
    npm ERR! node_modules/react-final-form-arrays
    npm ERR!   react-final-form-arrays@"^3.1.3" from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with --force, or --legacy-peer-deps
    npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
    npm ERR!
    npm ERR! See C:\Users\Sonny\AppData\Local\npm-cache\eresolve-report.txt for a full report.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     C:\Users\Sonny\AppData\Local\npm-cache\_logs\2022-12-01T08_53_57_626Z-debug-0.log
    

    Expected behavior:

    Hadmean starts

    Steps to reproduce:

    npx hadmean
    

    or

    git clone https://github.com/hadmean/hadmean
    cd hadmean
    npm i
    

    Other information:

    I run on Windows with node 16 and npm 8.

    bug 
    opened by SonnyAD 5
  • Removed duplicate save button in Entities Settings page

    Removed duplicate save button in Entities Settings page

    Pull Request type

    Please check the type of change your PR introduces:

    • [ ] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, renaming)
    • [ ] Refactoring (no functional changes, no API changes)
    • [ ] Build-related changes
    • [ ] Documentation content changes
    • [ ] Tests
    • [x] Other (please describe): Updated the UI

    What is the current behavior?

    image

    Issue Number: N/A

    What is the new behavior?

    image

    • Removed a duplicate button

    Does this introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

    None

    enhancement 
    opened by LHDi 3
  • feat: Show the count of data in the table tabs

    feat: Show the count of data in the table tabs

    Feature Request

    Describe the Feature Request We want to display the count of data for each table tab i.e we want to go from

    Screenshot from 2022-09-28 00-28-15

    to

    Screenshot from 2022-09-28 00-26-11

    Additional Context

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement good first issue hacktoberfest stale 
    opened by thrownullexception 2
  • [Snyk] Upgrade next from 12.3.1 to 12.3.3

    [Snyk] Upgrade next from 12.3.1 to 12.3.3

    Snyk has created this PR to upgrade next from 12.3.1 to 12.3.3.

    :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


    • The recommended version is 39 versions ahead of your current version.
    • The recommended version was released 21 days ago, on 2022-11-09.

    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

    For more information:

    🧐 View latest project report

    🛠 Adjust upgrade PR settings

    🔕 Ignore this dependency or unsubscribe from future upgrade PRs

    stale 
    opened by snyk-bot 1
  • feat: Extending User Entity

    feat: Extending User Entity

    Hadmean is great but if the "User" entity can be made dynamic in such a way that additional fields can be added to expand on what the "user" can do. For instance, I would like to add a field like a phone number but I don't necessarily want that field in the database provided by me, but stored within Hadmean and can be user for other operations like before and after form submission.

    enhancement 
    opened by supermx1 1
  • feat: Highlight the selected button from sidebar

    feat: Highlight the selected button from sidebar

    Feature Request

    Describe the Feature Request

    When a button is selected from the sidebar it is confusing to know which window you're on unless you watch the URL. So I am requesting a feature to light the buttons whenever they got selected.

    Describe Preferred Solution

    A state should be present to hold the index for the selected button and highlight it.

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [x] Yes
    • [ ] No
    enhancement 
    opened by 1saifj 1
  • feat: Ability to upload files via a form

    feat: Ability to upload files via a form

    Feature Request

    Ability to upload files via a form

    Most of the times admins will have to view and upload some files. Eg: images/documents Therefore it would be great if Hadmean can have a direct support to it.

    enhancement 
    opened by sandarenu 1
  • feat: Allow the name of the app to be customized

    feat: Allow the name of the app to be customized

    Feature Request

    Describe the Feature Request When setting up Hadmean for a client, You will probably want the name of the app everywhere instead of Hadmean This feature request is to allow the app name to the customizable in the settings view

    Describe Preferred Solution You can take inspiration from how the app theme colors is configured as you will basically be doing the same thing

    Related Code App theme implementation

    Additional Context

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement good first issue hacktoberfest stale 
    opened by thrownullexception 1
  • feat: Show Disabled CRUD elements from the Settings Tab

    feat: Show Disabled CRUD elements from the Settings Tab

    Feature Request

    Describe Preferred Solution When on the CRUD settings tab, You to click on a new tab to know if it is disabled or not We will like the tabs themselves to show if they are disabled or not without having to click on them to check Adding a class disabled will be a good idea. The class will just make the text a bit greyed out

    Related Code

    • Open any entity table
    • Click on the Table Settings on the top right corner The feature request is to make the tables indicate if they are enabled or not

    Additional Context Screenshot from 2022-09-26 12-05-14

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement good first issue hacktoberfest stale 
    opened by thrownullexception 1
  • feat: Action integrations

    feat: Action integrations

    Feature Request

    We currently have HTTP Actions, we need to support other actions like Mail, Slack, Zapier etc

    Describe the Feature Request

    Describe Preferred Solution

    Describe Alternatives

    Related Code

    Additional Context

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement no-stale 
    opened by thrownullexception 1
  • [Snyk] Upgrade redis from 4.3.1 to 4.4.0

    [Snyk] Upgrade redis from 4.3.1 to 4.4.0

    This PR was automatically created by Snyk using the credentials of a real user.


    Snyk has created this PR to upgrade redis from 4.3.1 to 4.4.0.

    :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


    • The recommended version is 1 version ahead of your current version.
    • The recommended version was released 22 days ago, on 2022-11-01.

    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

    For more information:

    🧐 View latest project report

    🛠 Adjust upgrade PR settings

    🔕 Ignore this dependency or unsubscribe from future upgrade PRs

    Chore 
    opened by thrownullexception 0
  • feat: Disable update view after disabling details view

    feat: Disable update view after disabling details view

    Feature Request

    Describe Preferred Solution There is no need to have a details view disabled and update view enabled as you can't edit what you can't see. So, Currently you have to disable both the details view and update view if you don't want both

    What is desired is that after disabling the details view the update view is also automatically disabled

    A nice additons will be to enable the details view if disabled when the update view is enabled

    Related Code Steps to get to the view

    1. Open any entity table
    2. Click on the Table Settings on the top right corner
    3. The request is to make the Hide details button on the Details tab automatically hide the Hide edit button on the Update tab

    Additional Context Screenshot from 2022-09-26 12-05-14

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement good first issue hacktoberfest no-stale 
    opened by thrownullexception 1
  • feat: Custom actions button

    feat: Custom actions button

    Feature Request

    Describe the Feature Request Edit and Create wont cut it form most cases, We need to have custom actions on the app

    Describe Preferred Solution

    Describe Alternatives

    Related Code

    Additional Context

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [ ] Yes
    • [ ] No
    enhancement no-stale 
    opened by thrownullexception 1
  • feat: Data Source Adaptor

    feat: Data Source Adaptor

    Feature Request

    Describe the Feature Request Currently Hadmean supports only relational DBs leaving NoSQL users left out, This feature is to implement and interface to easily add new data source

    Describe Preferred Solution

    Describe Alternatives None

    Related Code None

    Additional Context

    If the feature request is approved, would you be willing to submit a PR? (Help can be provided if you need assistance submitting a PR)

    • [X] Yes
    • [ ] No
    enhancement no-stale 
    opened by thrownullexception 1
🛠️⚡ Step-by-step tutorial to build a modern JavaScript stack.

JavaScript Stack from Scratch Welcome to my modern JavaScript stack tutorial: JavaScript Stack from Scratch. ?? This is the V2 of the tutorial, major

Jonathan Verrecchia 19.5k Jan 4, 2023
Full source-code for the step-by-step tutorial on how to use Phaser + Colyseus together.

Phaser: Real-time Multiplayer with Colyseus Full source-code for the step-by-step tutorial on how to use Phaser + Colyseus together. Live Demo See ste

Colyseus 19 Dec 24, 2022
A simple step by step tooltip helper for any site

Tooltip Sequence A minimalistic set of tooltips on your app. What it does So suppose you create a Web Application and you want to take your users or a

Sooraj Sivadasan Nair 299 Dec 21, 2022
Types generator will help user to create TS types from JSON. Just paste your single object JSON the Types generator will auto-generate the interfaces for you. You can give a name for the root object

Types generator Types generator is a utility tool that will help User to create TS Interfaces from JSON. All you have to do is paste your single objec

Vineeth.TR 16 Dec 6, 2022
⚡ Extremely fast online playground for every programming language.

Riju Riju is a very fast online playground for every programming language. In less than a second, you can start playing with a Python interpreter or c

Radon Rosborough 845 Dec 28, 2022
Placebo, a beautiful new language agnostic diagnostics printer! It won't solve your problems, but you will feel better about them.

Placebo A beautiful new language agnostic diagnostics printer! ┌─[./README.md] │ > 1 │ What is Placebo? · ───┬──── ·

Robin Malfait 78 Dec 16, 2022
This simple library allows you to create awesome responsive and highly customizable popups importing just one JavaScript file.

Creativa - Popup This is a simple library that allows you to create awesome popups importing just one JavaScript file. Getting started You can import

Eduardo Mollo 5 Mar 29, 2022
A simple CLI to generate a starter schema for keystone-6 from a pre-existing prisma schema.

Prisma2Keystone A tool for converting prisma schema to keystone schema typescript This is a proof of concept. More work is needed Usage npx prisma2key

Brook Mezgebu 17 Dec 17, 2022
Michael Schneider 4 Oct 26, 2022
This is a demo project for the SecTester JS SDK framework, with some installation and usage examples

SecTester SDK Demo Table of contents About this project About SecTester Setup Fork and clone this repo Get a Bright API key Explore the demo applicati

NeuraLegion 15 Dec 16, 2022
Simplify the installation of a Silverstripe Dev Environment.

silverstripe docker starter Simplify the installation of a Silverstripe Dev Environment. The silverstripe docker starter is based on the silverstripe/

brandcom 3 Jul 7, 2022
This project is a user friendly project that provides the accurate constellation name of the user

OVERVIEW: This is a group project by certain members of the 100Devs community. Contributors Lee Gill | GitHub: LeeGee64 | Twitter: @LeeGee64 | LinkedI

Lee Gill 5 Jun 15, 2022
Framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. 🗺️ Remix driver included. 🤟

About routes-gen is a framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. Think of it as Prisma,

Stratulat Alexandru 192 Jan 2, 2023
An interactive app that allows adding, editing and removing tasks of a to-do list. Drag-and-drop featured added. Webpack was used to bundle all the Js modules in to one main Js file.

To-do List A to-do list app This app let you to set your own to-do list. Built With HTML CSS JavaScript WebPack Jest Live Page Page Link Getting Start

Kenny Salazar 7 May 5, 2022
Replaces the default Strapi WYSIWYG editor with a customized build of CKEditor 5 html editor packed with useful plugins.

CKEditor 5 for Strapi Replaces the default Strapi WYSIWYG editor with a customized build of CKEditor 5 packed with useful plugins. ?? Get Started Feat

null 39 Jan 2, 2023
This is collection of the CNCF logos packed into a draw.io importable file to draw cloud native architectures

draw-io-cncf-shape This is collection of the CNCF logos packed into a draw.io importable file to draw cloud native architectures How to embed the shap

Jan-Otto Kröpke 10 Dec 26, 2022
'event-driven' library aims to simplify building backends in an event driven style

'event-driven' library aims to simplify building backends in an event driven style(event driven architecture). For message broker, light weight Redis Stream is used and for event store, the well known NoSQL database, MongoDB, is used.

Sihoon Kim 11 Jan 4, 2023
🎒 Accessible and extremely useful website for public school in Poland, built on fun and modern stack.

✨ Strona Szkolna ?? Zadania · ?? Pomysły Struktura ?? apps ?? backend: headless CMS (API) używający Strapi, które umożliwia dowolne typy contentu, np.

Elektron++ 26 Dec 21, 2022
Prisma +2 generator to emit Yup schemas from your Prisma schema

Prisma Yup Generator Automatically generate Yup schemas from your Prisma Schema, and use them to validate your API endpoints or any other use you have

Omar Dulaimi 31 Dec 24, 2022