Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/herbat73/GenVue

GenVue is a hostable, web application that lets confidential users upload and share private files. Tech stack: Net Core 2.0 + Vue.js + Vuex + OpenIddict + Vuetifyjs + EF + SQLServer/Postgress
https://github.com/herbat73/GenVue

babel netcore netcore2 openiddict postgressql sqlserver vue vuejs2 vuetifyjs webapi

Last synced: 9 days ago
JSON representation

GenVue is a hostable, web application that lets confidential users upload and share private files. Tech stack: Net Core 2.0 + Vue.js + Vuex + OpenIddict + Vuetifyjs + EF + SQLServer/Postgress

Awesome Lists containing this project

README

        

# Asp.NETCore 2.0 Vue 2 with WebApi Authorization Starter template

This repo contains an AspNetCore 2.1 + Vue.js 2 starter template (VS2017) + NetCore WebAPI + OpenIddict authorization.
---

# Table of Contents

* [Features](#features)
* [TechStack](#techstack)
* [Prerequisites](#prerequisites)
* [Installation - Getting Started!](#installation)
* [Extras](#extras)
* [Special Thanks](#special-thanks)
* [License](#license)
* [Vue & ASP.NET Core Consulting & training](##looking-for-vue--javascript-or-aspnet-consulting--training--support)

# Features

* Full responsive app accessed by Web or WebAPI (eg. postman client)

![Full responsive app](/Docs/1_start.png)

* Role level permission (admin, manager, user)

![Role level permission](/Docs/2_login_admin.png)

* Role context page display

![Role context page display](/Docs/3_admin_page.png)

* Admin can manage users, users groups, file categories, check users activity logs

![Admin can manage](/Docs/5_users_ibn_groups.png)

* User with role 'manager' has rigth to upload files to selected group and file category or private files with drag and drop functionality

![Manager role](/Docs/7_manager_upload.png)

* Users can download files from groups they belongs to

![Manager role](/Docs/8_user_download.png)

# TechStack

- **ASP.NET Core 2.1**
- Web API
- **VueJS 2**
- Vuex (State Store)
- **OpenIddict 2.0.0**
- Easy-to-use OpenID Connect server for ASP.NET Core
- **Webpack 4**
- HMR (Hot Module Replacement/Reloading)
- **Vuetifyjs**
- Material Component Framework for Vue

# Prerequisites:
* nodejs > 6
* VS2017
* dotnet core 2.1

# Installation / Getting Started:
* Clone this repo
* At the repo's root directory run `dotnet restore`
* Restore Node dependencies by running `npm install` in root folder (there is package.json and wepack config files) and this way install all required modules
* Build the Vue web application (`npm run build`)

finally

* Run the application in VSCode or Visual Studio 2017 (Hit `F5`) or command ('dotnet run') - Vue Dev Tools are enebled
* Browse to [http://localhost:53703](http://localhost:53703)

# Extras

- Get Chrome DevTools for Vue [here](https://chrome.google.com/webstore/detail/vuejs-devtools/nhdogjmejiglipccpnnnanhbledajbpd)

# Webpack build

The css is not generated while you are in development mode. They are going to be created only when you will use the dotnet publish command or as an alternative, you can also go and type npm run build -- --prod which will launch the production build with the minification and extraction of the files.

Important: Currently, webpack clean the entire wwwroot folder within the .Net project. So, if you have static files, move them within the ./ClientApp/static/ folder.

# Webpack hot-reload
When the .Net process is started, dotnet run your app, you will have to wait a little that the file are published in your wwwroot folder. After it is completed, you will be able to access your application at http://localhost:53703. Any modification made within the ClientApp folder will trigger on save a live update within the browser. Just refresh a broweser to see the changes.

### Special Thanks

List of github repos which have been my inspiration to build this template and may contains part of their source code.

https://github.com/MarkPieszak/aspnetcore-Vue-starter

https://github.com/andersco/FreedomCalculator2

https://github.com/bradyholt/aspnet-core-vuejs-template

https://github.com/0xFireball/PenguinUpload

https://github.com/Nordes/HoNoSoFt.DotNet.Web.Spa.ProjectTemplates

----

# Found a Bug? Want to Contribute?

Nothing's ever perfect, but please let me know by creating an issue (make sure there isn't an existing one about it already), and we'll try and work out a fix for it! If you have any good ideas, or want to contribute, feel free to either make an Issue with the Proposal, or just make a PR from your Fork.

----

# License

[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](/LICENSE)

----

# Looking for Vue / JavaScript or ASP.NET Consulting + Training + support?

Contact me @ , and let's talk about your projects needs!