Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/avivace/fuse

A simple file sharing web service in Vue.js and Flask
https://github.com/avivace/fuse

axios axios-vue boostrap4 bootstrap example-api example-project file-upload file-upload-server file-upload-service flask flask-backend full-stack restful-webservices vue-bootstrap vue2 vuejs vuejs2

Last synced: 1 day ago
JSON representation

A simple file sharing web service in Vue.js and Flask

Awesome Lists containing this project

README

        

fuse

> A simple file uploading web service in Vue.js, Axios and Flask

**Deprecation notice** this was a simple toy project I threw together to show some API and client-server concepts to the graduating students I was supervising in 2018/2019. This is *now* probably superseded by more recent bundling tools (erm.. webpack) and technologies. Keep that in mind and take a look at more modern /updated webdev practises.

![Demo GIF](https://i.imgur.com/izTLhCm.gif)

### Deploy

Supposing you have `NodeJS`, `npm`, `Python3` and `pip3` installed:

```bash
# Install npm dependencies
npm install

# Install python3 dependencies
pip3 install -r requirements.txt

# Start Flask backend server
python3 app.py

# Serve with hot reload at localhost:8080
npm run dev

```

## Backend

Flask, sqlite3 as database.

## Frontend

Vue.js, the CSS framework is [bootstrap-vue](https://github.com/bootstrap-vue/bootstrap-vue) ([Bootstrap 4](https://github.com/twbs/bootstrap)). Requests are handled with [Axios](https://github.com/axios/axios).

### Build Setup

``` bash
# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

# build for production and view the bundle analyzer report
npm run build --report

# run unit tests
npm run unit

# run e2e tests
npm run e2e

# run all tests
npm test
```

## Documentation Resources

- [VueJS webpack template guide](http://vuejs-templates.github.io/webpack/)
- [docs for vue-loader](http://vuejs.github.io/vue-loader)

Thanks to [Cristian Baldi](https://github.com/crisbal) for its Vue wisdom.