Start your development with a Bootstrap 4 Admin Dashboard built for Node.js framework, the newest go-to technology for top companies. Creative Tim partnered with Udevoffice to provide a fully coded “frontend + backend” solution for you. It features a huge number of components that can help you create amazing websites and brings with itself innumerable advantages: lightweight, fast, scalable and modern way to execute your next top app.
FULLY CODED COMPONENTS
Argon Dashboard Node is built with over frontend 100 individual components, giving you the freedom of choosing and combining. All components can take variations in colour, that you can easily modify using SASS files. You will save a lot of time going from prototyping to full-functional code, because all elements are implemented. This Dashboard is coming with prebuilt examples, so the development process is seamless, switching from our pages to the real website is very easy to be done. Every element has multiple states for colors, styles, hover, focus, that you can easily access and use. View all components here
COMPLEX DOCUMENTATION
Each element is well presented in a very complex documentation. You can check the components here and the foundation here
Example Pages
If you want to get inspiration or just show something directly to your clients, you can jump start your development with our pre-built example pages. You will be able to quickly set up the basic structure for your web project. View example pages here
Node.js
(at least 10.x version) installed on your machine, if you don't have it, you should install it - download linkcd
to your downloaded Argon appnpm
package manager - Run npm install
on the project rootyarn
package manager - Run yarn install
on the project rootdocker-compose up -d
in a terminal on the project root. This will start 3 containers:
cd
to env-files
folder and change the following configurations with your own:DATABASE_URL=http://creativeTim:creativeTim@127.0.0.1:5432/creativeTim
# Example: DATABASE_URL=http://<user>:<password>@<host>/<database_name>
DATABASE_HOST=127.0.0.1
DATABASE_PORT=5432
DATABASE_NAME=creativeTim
DATABASE_USER=creativeTim
DATABASE_PASSWORD=creativeTim
REDIS_URL=redis://:@127.0.0.1:6379
# Example: redis://:<password>@<host>:<port>
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=
npm run knex migrate:latest
or yarn knex migrate:latest
if you are using yarn
as the default package managernpm run knex seed:run
or yarn knex seed:run
if you are using yarn
as the default package managerpackage.json
under scripts
) must be called:
npm run start
or npm run dev
for starting the development environment, which has livereload enabled;yarn start
or yarn dev
for starting the development environment, which has livereload enabled;Register a user or login using admin@argon.com:secret and start testing the preset (make sure to run the migrations and seeds for these credentials to be available).
Besides the dashboard and the auth pages this preset also has an edit profile page. NOTE: Keep in mind that all available features can be viewed once you login using the credentials provided above or by registering your own user.
In order to see the available features cd
into features
folder, and you will then find a folder for each of the available features, mostly each folder containing:
routes.js
file that usually contains the GET
and POST
requests, for example, the profile router looks like this:const { wrap } = require('async-middleware');
const requestBodyValidation = require('./commands/verify-request-body');
const updateUserInfo = require('./commands/update-user-info');
const { loadPage } = require('./commands/profile');
module.exports = (router, middlewares = []) => {
router.get('/profile', middlewares.map(middleware => wrap(middleware)), wrap(loadPage));
router.post('/update-profile-info', wrap(requestBodyValidation), wrap(updateUserInfo));
return router;
};
repository.js
file that contains feature database queriescommands
folder where you can find all feature functionality functions, for example the login template rendering which looks like this:function loadPage(req, res) {
debug('login:loadPage', req, res);
res.render('pages/login');
}
constants.js
file, to store all your static variables, for eg:const USERNAME_PASSWORD_COMBINATION_ERROR = 'These credentials do not match our records.';
const INTERNAL_SERVER_ERROR = 'Something went wrong! Please try again.';
All feature routes are mounted in routes/index.js
from the project root.
views
folder where you will find:
layout.ejs
file, the main template layout.pages
folder with all the page templatespartials
folder with the common components (header, footer, sidebar)HTML | NODEJS |
---|---|
Register | Login | Dashboard |
---|---|---|
Profile Page | Icons Page | Profile Page |
---|---|---|
The documentation for the Argon Dashboard Node is hosted at our website.
├── CHANGELOG.md
├── ISSUES_TEMPLATE.md
├── LICENSE.md
├── README.md
├── app.js
├── bin
│ └── www
├── config
│ └── index.js
├── db
│ ├── index.js
│ ├── knexfile.js
│ ├── migrations
│ │ └── 20190213122702_create-users-table.js
│ └── seeds
│ └── create-default-user.js
├── docker-compose.yml
├── docs
│ └── documentation.html
├── ecosystem.config.js
├── env-files
│ ├── development.env
│ └── production.env
├── features
│ ├── login
│ │ ├── commands
│ │ │ ├── load-page.js
│ │ │ ├── login.js
│ │ │ ├── redirect-to-dashboard.js
│ │ │ └── verify-request-body.js
│ │ ├── constants.js
│ │ ├── init-auth-middleware.js
│ │ ├── repository.js
│ │ └── routes.js
│ ├── logout
│ │ ├── commands
│ │ │ └── logout.js
│ │ └── routes.js
│ ├── profile
│ │ ├── commands
│ │ │ ├── load-page.js
│ │ │ ├── update-user-info.js
│ │ │ └── verify-request-body.js
│ │ ├── constants.js
│ │ ├── repository.js
│ │ └── routes.js
│ ├── register
│ │ ├── commands
│ │ │ ├── create-user.js
│ │ │ ├── load-page.js
│ │ │ └── verify-request-body.js
│ │ ├── constants.js
│ │ ├── repository.js
│ │ └── routes.js
│ └── reset-password
│ ├── commands
│ │ └── load-page.js
│ └── routes.js
├── gulpfile.js
├── haproxy.cfg
├── logger.js
├── package.json
├── public
│ ├── css
│ │ ├── argon.css
│ │ └── argon.min.css
│ ├── fonts
│ │ └── nucleo
│ ├── img
│ │ ├── brand
│ │ ├── icons
│ │ └── theme
│ ├── js
│ │ ├── argon.js
│ │ └── argon.min.js
│ ├── scss
│ │ ├── argon.scss
│ │ ├── bootstrap
│ │ ├── core
│ │ └── custom
│ └── vendor
├── routes
│ └── index.js
├── screens
│ ├── Dashboard.png
│ ├── Login.png
│ ├── Profile.png
│ └── Users.png
├── views
│ ├── layout.ejs
│ ├── pages
│ │ ├── 404.ejs
│ │ ├── dashboard.ejs
│ │ ├── icons.ejs
│ │ ├── login.ejs
│ │ ├── maps.ejs
│ │ ├── profile.ejs
│ │ ├── register.ejs
│ │ ├── reset-password.ejs
│ │ └── tables.ejs
│ └── partials
│ ├── auth
│ │ ├── footer.ejs
│ │ ├── header.ejs
│ │ └── navbar.ejs
│ ├── dropdown.ejs
│ ├── footer.ejs
│ ├── header.ejs
│ ├── navbar.ejs
│ └── sidebar.ejs
└
At present, we officially aim to support the last two versions of the following browsers:
HTML | NODEJS |
---|---|
Please see the changelog for more information on what has changed recently.
We use GitHub Issues as the official bug tracker for the Material Kit. Here are some advices for our users that want to report an issue:
Copyright 2019 Creative Tim (https://www.creative-tim.com/?ref=adn-readme)
Licensed under MIT (https://github.com/creativetimofficial/argon-dashboard-nodejs/blob/master/LICENSE.md)
Twitter: https://twitter.com/CreativeTim?ref=adn-readme
Facebook: https://www.facebook.com/CreativeTim?ref=adn-readme
Dribbble: https://dribbble.com/creativetim?ref=adn-readme
Instagram: https://www.instagram.com/CreativeTimOfficial?ref=adn-readme