A web site in Finland for an ancient martial art from Japan.
All the code is under the Creative Commons Attribution-ShareAlike 4.0 International Public License.
Full legal text also available in
About the martial art
Naginata is a weapon made of a long wooden stick on which a curved blade is attached.
The art of using this weapon is often called simply as Naginata, but more accurately it can be called as Atarashii Naginata, in the case of the post-Meiji era standardised version.
The method of using naginata as a weapon has existed much longer and some around 500 styles have existed in the past.
Today these are still some ten active style, of which most of them contain other weapons aside using just a naginata. In any case in these styles naginata is used against a sword.
This website will focus on the following two:
- Atarashii Naginata (http://naginata.jp/)
- Jikishinkageryu Naginatajutsu (http://www.jikishin-naginata.jp/)
About this software project
The main reason for this website and this GitHub project is to learn to use the given technologies and to promote the martial art.
naginata.fi is privately registered to Jukka Paasonen.
Mari Paasonen has been kind enough to provide the Japanese translations for the content.
Leena Lecklin was kind enough to draw the
used in the Atarashii Naginata page.
Contributors are welcome.
Any changes made to this GitHub repository, are automatically deployed to Heroku, hence any content updates are visible via the web site almost immediately.
Linting is done with ESLint and can be executed with
npm run lint.
- HTML5 for markup (http://developers.whatwg.org/)
- CSS3 for styling (http://www.css3.info/modules/)
- Local Storage replacing browser cookies (http://www.w3.org/TR/webstorage/)
- Google Web Fonts (http://www.google.com/fonts)
- Google Analytics
- Deployed to Heroku (http://heroku.com/)
List of software used for making
npm install grunt
Unit tests for both front end and back end are using Jasmine and for code coverage Istanbul.
grunt test npm run coverage
Web performance tests are done with...
sitespeed.io -u http://naginata.fi -k true -d 2 gem install wbench wbench -n http://naginata.fi > wbench.md
Style coverage is measured with several tools:
npm install -g ucss ucss npm install -g stylestats stylestats -t html public_html/css/main.css > stylestats.html npm install -g parker parker public_html/css/main.css > parker.md
npm install -g nodemon nodemon server.js
Automated screenshot of the front page on every deployment with GhostInspector.
heroku addons:add deployhooks:http --url=https://api.ghostinspector.com/v1/suites/[suite-id]/execute/?apiKey=[api-key]
The free plan of GhostInspector limits running the tests only up to 100 timer per month, hence it is much more efficient to execute them only on deployment, instead of once a day.
Please create a pull request, which only touches the Markdown files under
The existing Markdown files can be exported as PDF, for example with pandoc:
pandoc -V geometry:margin=0.5in -o content/en/grading-rules.md grading-rules-english.pdf
- Speed study (http://blog.chromium.org/2010/07/do-you-know-how-slow-your-web-page-is.html)
- Facebook liking and related, https://developers.facebook.com/tools/debug/og/object?q=naginata.fi
- Further CSP tuning, https://www.owasp.org/index.php/Content_Security_Policy
Versions before 0.4.0 were using PHP as the backend and content editing was done at the site, after OpenID based login. Content was stored as HTML5 in MySQL database.
PHP version was made to match the same simplified functionality as the Node.js counterpart in 0.4.1.
Around the release of 0.6.0, the actual
naginata.fi domain was moved to Heroku and served from there with Node.js.