Git Product home page Git Product logo

dancecats's Introduction

ViiSiX

ViiSiX content generate source code by Go Hugo. Contents are written using Markdown.

  1. Run on your local machine

Go to the source code directory, issue following commands:

a. Using Docker

// Setup Docker image
$ make setup
// Running Hugo web server using Docker
$ make server

b. Without Docker

$ hugo server

Then navigate to http://localhost:1313 to see the website.

  1. Add content

We have 3 kinds of content:

  • blog
  • members
  • projects

Depend on content type, issue the following commands:

a. With Docker

$ make blog BLOG=nice-blog
$ make project PROJECT=awesome-project
$ make member MEMBER=handsome-sysadmin

b. Without Docker

$ hugo new blog/nice-blog.md
$ hugo new projects/awesome-project
$ hugo new members/handsome-sysadmin

Then you can edit /content/blog/nice-blog.md, input your content.

  1. Generate public html files

Go to the source code directory, issue:

a. With Docker

$ make public

b. Without Docker

$ hugo

Static web will be generated at public directory, you can now upload it to a web server.

dancecats's People

Contributors

caohhung avatar scattm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

dancecats's Issues

Scheduling

Support job scheduling:

  • Once
  • Hourly
  • Daily
  • Weekly
  • Monthly

Delete schedule

We are missing delete schedule function. Need to add ASAP.

DB schema migrator

A simple migrator script that support SQL-Alchemy for easy database schema migrating.

Plugins-lize the Connector

Currently blocking #67
Default support connector: MySQL
Convert to connector plugins: PostgreSQL + SQLServer
Add option config path of plugins directory.

Missing migrate database from scratch

We have the function to add full database schema and the migration tool can only database from somewhere in the past of development. But if we use that we can't use the helpful migration tool by alembic. We have to roll back and fix this.

Using variable on job

As a user, I want to use variable on job, so that I can have more freely control on what will run on that job.

POC - Numba

I read that Numba and PyPy can help improve python performance. Since I also read that PyPy can't be used for numpy and others like scikitlearn, I want to try out the other option: Numba.

Generated download link

If the result file is too large, do not send it via email, instead send a link via email to user.

  • Have a configurable number in MB that if a result file is larger than this number, do not send the whole file via email.
  • Discuss: Download link can be used by everyone, or user have to login to download it. An option for job creator/editor maybe needed.

Related issue: #90

User & Role - Solutions for roles

As now every users in DanceCat can edit and run jobs. But we may want to limit that. In this scope, find a solutions, discuss how can we use roles to grant permission on users, and how we grant it.

Can not open socket on Safari

Currently DanceCat is only tested on Google Chrome. After I tried on Safari 9, I found out that because of ES6 format Safari do not open web socket, the realtime job's result is not work. Need to work around more with webpack to fix this.

Separate run query and send email on Job

Currently whenever a job is running it will run the query and then send mail to users afterwards. We must change this behavior by separate them:

  • Create new RQ queue for send email.
  • After running query, enqueue a job for send email
  • New statuses for Job: "Success, mails sent" and "Success, mails failed"

View job query result on Web

Currently we support view job result on Web as JSON. It would be great if there are also a table view for it.

Schedule & Worker - Can not update next run

This is a critical issue since at some point we can not set the next run value of schedule objects. Need to trace down the root cause.

Scope of work:

  • Find root cause and fix
  • Add test for Schedule model

Add timeout options for Job

  • Add one more attribute to Job Model: Timeout
  • Add timeout field to Query Job Form
  • Pass timeout parameter when execute query job

Test - Workers

Add test for workers:

  • Query worker
  • Send mail worker

Target: 90% coverage

User & Role - Adding features and improving model

As the result of User Model unit testing in #61. We need to add more features and improve the User Model. Those items list below just for note, we will add more issues for them later.

Feature:

  • Disable user
  • Delete user
  • Change email
  • Change password #72
  • User roles (Execute/View/Edit) #71

Improve:

  • Process of duplicate
  • More user states
  • Password expiration

Add new method to update outdate schedule

Scheduling is base on next_run timestamp on schedule table. If the application is closed on scheduled time, scheduled jobs won't be run and updated to next run time. So I have to create a new method to manual update those outdate schedules.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.