Boilerplates can be a huge time sink to maintain and I've decieded to archivethis project.
I started the work for upgrading to hapi v17 and using async/await instead ofcallbacks, that work can be found in the hapi-17-async-await
branch.
Thanks for your interest in my projects.
A website and user system starter.
url | username | password |
---|---|---|
https://getaqua.herokuapp.com/ | root | root |
Server side, Aqua is built with the hapi framework.We're using MongoDB as a data store.
The front-end is built with React. We useRedux as our state container. Client siderouting is done with React Router.We're using Gulp for the build system.
We use bcrypt
for hashingsecrets. If you have issues during installation related to bcrypt
then referto this wikipage.
If you don't use React and/or would rather bring your own front-end, checkoutFrame. It's just the HTTP API parts of Aqua.
$ git clone git@github.com:jedireza/aqua.git
$ cd aqua
$ npm install
Simply edit config.js
. The configuration usesconfidence
which makes it easy tomanage configuration settings across environments. Don't store secrets inthis file or commit them to your repository.
Instead, access secrets via environment variables. We usedotenv
to help make setting localenvironment variables easy (not to be used in production).
Simply copy .env-sample
to .env
and edit as needed. Don't commit .env
to your repository.
WARNING: This will clear all data in the following MongoDB collections ifthey exist: accounts
, adminGroups
, admins
, authAttempts
, sessions
,statuses
, and users
.
$ npm run first-time-setup
# > aqua@0.0.0 first-time-setup /home/jedireza/projects/aqua
# > node first-time-setup.js
# MongoDB URL: (mongodb://localhost:27017/aqua)
# Root user email: jedireza@gmail.com
# Root user password:
# Setup complete.
$ npm start
# > aqua@0.0.0 start /Users/jedireza/projects/aqua
# > gulp react && gulp
# [23:41:44] Using gulpfile ~/projects/aqua/gulpfile.js
# ...
Now you should be able to point your browser to http://127.0.0.1:8000/ and seethe welcome page.
nodemon
watches for changes in server codeand restarts the app automatically. gulp
andwebpack
watch the front-end files andre-build those automatically too.
We also pass the --inspect
flag to Node so you have a debugger available.Watch the output of $ npm start
and look for the debugging URL and open it inChrome. It looks something like this:
chrome-devtools://devtools/remote/serve_file/@62cd277117e6f8ec53e31b1be58290a6f7ab42ef/inspector.html?experiments=true&v8only=true&ws=localhost:9229/node
$ node server.js
Unlike $ npm start
this doesn't watch for file changes. Also be sure to setthese environment variables in your production environment:
NODE_ENV=production
- This is important for many different optimizations,both server-side and with the front-end build files.NPM_CONFIG_PRODUCTION=false
- This tells $ npm install
to not skipinstalling devDependencies
, which we need to build the front-end files.Any issues or questions (no matter how basic), open an issue. Please take theinitiative to read relevant documentation and be proactive with debugging.
Contributions are welcome. If you're changing something non-trivial, you maywant to submit an issue before creating a large pull request.
Lab is part of the hapi ecosystem and what weuse to write all of our tests.
$ npm test
# > aqua@0.0.0 test /Users/jedireza/projects/aqua
# > lab -t 100 -S -T ./test/lab/transform -L --lint-options '{"extensions":[".js",".jsx"]}' ./test/lab/client-before.js ./test/client/ ./test/lab/client-after.js ./test/server/ ./test/lab/server-after.js ./test/misc/
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ..................................................
# ...............
# 865 tests complete
# Test duration: 6382 ms
# No global variable leaks detected
# Coverage: 100.00%
# Linting results: No issues
If you'd like to run a specific test or subset of tests you can use thetest-client
and test-server
scripts included in the package.json
file.
You specificy the path(s) via the TEST_TARGET
environment variable like:
$ TEST_TARGET=test/server/web/main.js npm run test-server
# or
$ TEST_TARGET=test/client/actions/api.js npm run test-client
MIT
What you build with Aqua is more important than Aqua.
Aqua-Sim 安装 1、下载Ubuntu14.04 ubuntu 14.04:http://mirrors.aliyun.com/ubuntu-releases/14.04/ 2、Ubuntu源需要更新 sudo apt-get update #更新源列表 sudo apt-get upgrade #更新已经安装的包 sudo apt-get dist-upgrade #更
Aqua Data Studio 是一个为数据库开发人员准备的集成开发环境,可以对数据库做查询、管理,提供大量的数据库工具,例如数据库比较、源码控制等,目前支持的数据库包括:Oracle, DB2 iSeries, DB2 LUW, MS SQL Server, Sybase ASE, Sybase Anywhere, Sybase IQ, Informix, PostgreSQL, MySQL,
[错误]脚本行:39-40----------------------ORA-06550:第2行,第7列:PLS-00103:当需要下列情况之一时,遇到符号“文件结束”: &=-+;in是mod余数而不是rem<>或!=或~=>=<=<>和或类似于2类似于4类似于multiset成员submultiset脚本第38行,语句第2行,第7列