From b045833c3c490f02b6b65ab78aa46c938117718e Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Wed, 3 Feb 2021 20:35:56 +0200 Subject: Added some information on setting up the project in README --- README.md | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 61 insertions(+), 1 deletion(-) (limited to 'README.md') diff --git a/README.md b/README.md index 3d59bf4..6fbd5d3 100644 --- a/README.md +++ b/README.md @@ -1 +1,61 @@ -# DevHive \ No newline at end of file +# DevHive + +DevHive is the social network solution for programmers. In it you can make posts to share with your friends, comment and more. + +It's built with ASP.NET Core as a back-end and Angular as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). + +## Setting up locally + +DevHive can be easily self-hosted on your computer or server. There currently aren't any demo instances, so the only way to see it for yourself it to set it up. + +This tutorial is geared towards Linux-based systems. + +### Prerequisites + +There are some things you need to setup before even downloading the app. + +Back-end (API) tools: +- [`dotnet 5.0`](https://docs.microsoft.com/en-us/dotnet/core/install/linux) or later +- [`Entity Framework Core tool 5.0.2`](https://docs.microsoft.com/en-us/ef/core/cli/dotnet) or later + - if you've already installed `dotnet`, you can just run this command `dotnet tool install dotnet-ef -g` +- [`postresql 13.1`](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-20-04) or later (older versions might work, but haven't been tested) + - Fedora users could also refer to [this](https://computingforgeeks.com/how-to-install-postgresql-12-on-fedora/) guide + - Arch users can refer to the [ArchWiki](https://wiki.archlinux.org/index.php/PostgreSQL) + +Front-end tools: +- [`Angular CLI 11.0`](https://www.tecmint.com/install-angular-cli-on-linux/) or later (older versions might work, but haven't been tested) + +### Getting started with the database + +After installing all of the tools and setting up the database, you should have a user with a password with which to access postgres and you should have [created a database](https://www.tutorialspoint.com/postgresql/postgresql_create_database.htm) for the API. If so, follow these steps: + +1. Clone the repository: `git clone https://github.com/Team-Kaleidoscope/DevHive.git` +2. Navigate to the folder, in which you cloned it, and then go to `src/DevHive.Data` +3. Edit the file `ConnectionString.json` and replace the default values with what you've setup +4. In the same directory, run `dotnet ef database update` + +### Starting up the API + +1. Navigate to the `src/DevHive.Web` folder +2. Edit the `appsettings.json` file, under "ConnectionStrings", type in the values, you setup in `ConnectionString.json` in `DevHive.Data` + - On the third row there is a "Secret", it's used for encryption of User password, you can change it **but it must be made up of 64 letters and number!** + - There are also some cloud values that you can change. Currently, the project uses [Cloudinary](https://cloudinary.com/) as a place for uploading files. If you wish, you can setup your own account there, otherwise file uploading won't work. +3. Run `dotnet run` in the `DevHive.Web` folder + - feel free to [run the command in background](https://linuxize.com/post/how-to-run-linux-commands-in-background/) or [create a systemd service](https://medium.com/@benmorel/creating-a-linux-service-with-systemd-611b5c8b91d6) + +If everything went well, you can now access the API on `http://localhost:5000/api` with something like [Postman](https://www.postman.com/) or the FOSS [Insomnia Designer](https://github.com/Kong/insomnia). Refer to the [API Endpoints](https://github.com/Team-Kaleidoscope/DevHive/wiki/API-Endpoints) page in the Wiki. + +### Starting up the Front-end + +1. Navigate to `src/DevHive.Angular` +2. Run `npm install` +3. Run `ng serve` + - as with the API, you can [run the command in background](https://linuxize.com/post/how-to-run-linux-commands-in-background/) or [create a systemd service](https://medium.com/@benmorel/creating-a-linux-service-with-systemd-611b5c8b91d6) + +If nothing broke, you can now access the front-end from `http://localhost:4200`. Also, don't forget that the API needs to be running *at the same time*, otherwise you won't get beyond the login and register screens! + +## Important notes + +You can change on what port the API is ran, by changing the `HTTP_PORT` constant in `src/DevHive.Web/Program.cs`. If you do so, you **must** also update the front-end, because by default it will try to send requests to port 5000. Go to `src/DevHive.Angular/src/app` and edit the `app-constants.module.ts` file, on the second row you're gonna see the variable `BASE_API_URL`, change it accoring to your API modifications. + +You can change on what port the Front-end is ran, by issueing the serve command with the `--port` parameter: `ng serve --port 5001`. But, **don't run it with the `--ssl` parameter!** SSL isn't supported yet, so it will throw errors! As an alternative, if you need ssl, is using a [reverse proxy](https://www.cloudflare.com/learning/cdn/glossary/reverse-proxy/). -- cgit v1.2.3 From 5f2ba0750f5d52c18d193d0b8ec6196cc0d7e5c8 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Thu, 4 Feb 2021 17:15:55 +0200 Subject: Added screenshots to README --- README.md | 15 +++++++++++++++ screenshots/admin-panel.png | Bin 0 -> 50920 bytes screenshots/another-user-logged-in.png | Bin 0 -> 115600 bytes screenshots/comment-page.png | Bin 0 -> 21475 bytes screenshots/creating-post.png | Bin 0 -> 30921 bytes screenshots/edit.png | Bin 0 -> 32121 bytes screenshots/feed.png | Bin 0 -> 36789 bytes screenshots/login.png | Bin 0 -> 20462 bytes screenshots/post-page-with-comments.png | Bin 0 -> 53849 bytes screenshots/post-page.png | Bin 0 -> 37766 bytes screenshots/register.png | Bin 0 -> 25905 bytes screenshots/your-profile-page.png | Bin 0 -> 50603 bytes screenshots/your-settings-page.png | Bin 0 -> 41581 bytes 13 files changed, 15 insertions(+) create mode 100644 screenshots/admin-panel.png create mode 100644 screenshots/another-user-logged-in.png create mode 100644 screenshots/comment-page.png create mode 100644 screenshots/creating-post.png create mode 100644 screenshots/edit.png create mode 100644 screenshots/feed.png create mode 100644 screenshots/login.png create mode 100644 screenshots/post-page-with-comments.png create mode 100644 screenshots/post-page.png create mode 100644 screenshots/register.png create mode 100644 screenshots/your-profile-page.png create mode 100644 screenshots/your-settings-page.png (limited to 'README.md') diff --git a/README.md b/README.md index 6fbd5d3..0ad6b7c 100644 --- a/README.md +++ b/README.md @@ -59,3 +59,18 @@ If nothing broke, you can now access the front-end from `http://localhost:4200`. You can change on what port the API is ran, by changing the `HTTP_PORT` constant in `src/DevHive.Web/Program.cs`. If you do so, you **must** also update the front-end, because by default it will try to send requests to port 5000. Go to `src/DevHive.Angular/src/app` and edit the `app-constants.module.ts` file, on the second row you're gonna see the variable `BASE_API_URL`, change it accoring to your API modifications. You can change on what port the Front-end is ran, by issueing the serve command with the `--port` parameter: `ng serve --port 5001`. But, **don't run it with the `--ssl` parameter!** SSL isn't supported yet, so it will throw errors! As an alternative, if you need ssl, is using a [reverse proxy](https://www.cloudflare.com/learning/cdn/glossary/reverse-proxy/). + +## Screenshots + +![](./screenshots/register.png) +![](./screenshots/login.png) +![](./screenshots/feed.png) +![](./screenshots/creating-post.png) +![](./screenshots/your-profile-page.png) +![](./screenshots/your-settings-page.png) +![](./screenshots/edit.png) +![](./screenshots/post-page.png) +![](./screenshots/post-page-with-comments.png) +![](./screenshots/comment-page.png) +![](./screenshots/another-user-logged-in.png) +![](./screenshots/admin-panel.png) diff --git a/screenshots/admin-panel.png b/screenshots/admin-panel.png new file mode 100644 index 0000000..d8f1b3f Binary files /dev/null and b/screenshots/admin-panel.png differ diff --git a/screenshots/another-user-logged-in.png b/screenshots/another-user-logged-in.png new file mode 100644 index 0000000..67f34e1 Binary files /dev/null and b/screenshots/another-user-logged-in.png differ diff --git a/screenshots/comment-page.png b/screenshots/comment-page.png new file mode 100644 index 0000000..f517dc9 Binary files /dev/null and b/screenshots/comment-page.png differ diff --git a/screenshots/creating-post.png b/screenshots/creating-post.png new file mode 100644 index 0000000..58081f2 Binary files /dev/null and b/screenshots/creating-post.png differ diff --git a/screenshots/edit.png b/screenshots/edit.png new file mode 100644 index 0000000..e448af3 Binary files /dev/null and b/screenshots/edit.png differ diff --git a/screenshots/feed.png b/screenshots/feed.png new file mode 100644 index 0000000..a456e2a Binary files /dev/null and b/screenshots/feed.png differ diff --git a/screenshots/login.png b/screenshots/login.png new file mode 100644 index 0000000..378a682 Binary files /dev/null and b/screenshots/login.png differ diff --git a/screenshots/post-page-with-comments.png b/screenshots/post-page-with-comments.png new file mode 100644 index 0000000..d464053 Binary files /dev/null and b/screenshots/post-page-with-comments.png differ diff --git a/screenshots/post-page.png b/screenshots/post-page.png new file mode 100644 index 0000000..96428ef Binary files /dev/null and b/screenshots/post-page.png differ diff --git a/screenshots/register.png b/screenshots/register.png new file mode 100644 index 0000000..70448b1 Binary files /dev/null and b/screenshots/register.png differ diff --git a/screenshots/your-profile-page.png b/screenshots/your-profile-page.png new file mode 100644 index 0000000..3701ea3 Binary files /dev/null and b/screenshots/your-profile-page.png differ diff --git a/screenshots/your-settings-page.png b/screenshots/your-settings-page.png new file mode 100644 index 0000000..61e39e6 Binary files /dev/null and b/screenshots/your-settings-page.png differ -- cgit v1.2.3 From 689a32f10ccdb69bc777971c4deb134125a1a0e0 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 4 Feb 2021 17:17:31 +0200 Subject: Added contents listing to readme --- README.md | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'README.md') diff --git a/README.md b/README.md index 0ad6b7c..15d14ce 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,10 @@ DevHive is the social network solution for programmers. In it you can make posts It's built with ASP.NET Core as a back-end and Angular as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). +Contents: +- [Setting up locally](https://github.com/Team-Kaleidoscope/DevHive/tree/dev#setting-up-locally) +- [Screenshots](https://github.com/Team-Kaleidoscope/DevHive/tree/dev#screenshots) + ## Setting up locally DevHive can be easily self-hosted on your computer or server. There currently aren't any demo instances, so the only way to see it for yourself it to set it up. -- cgit v1.2.3 From e3826b586304b21970631949f4fdc9d7ae5bbbdb Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 4 Feb 2021 17:20:03 +0200 Subject: Improved readme contents links --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 15d14ce..770a572 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,8 @@ DevHive is the social network solution for programmers. In it you can make posts It's built with ASP.NET Core as a back-end and Angular as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). Contents: -- [Setting up locally](https://github.com/Team-Kaleidoscope/DevHive/tree/dev#setting-up-locally) -- [Screenshots](https://github.com/Team-Kaleidoscope/DevHive/tree/dev#screenshots) +- [Setting up locally](#setting-up-locally) +- [Screenshots](#screenshots) ## Setting up locally -- cgit v1.2.3 From 35cc99b14606cda71136a6008645dd385eee6c85 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 4 Feb 2021 17:35:19 +0200 Subject: Minor improvements to README styling and wording --- README.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 770a572..caa4cfd 100644 --- a/README.md +++ b/README.md @@ -2,17 +2,17 @@ DevHive is the social network solution for programmers. In it you can make posts to share with your friends, comment and more. -It's built with ASP.NET Core as a back-end and Angular as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). +It's built with [`ASP.NET Core`](https://docs.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core?view=aspnetcore-5.0) as a back-end and [`Angular`](https://angular.io/) as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). -Contents: +### Contents: - [Setting up locally](#setting-up-locally) - [Screenshots](#screenshots) ## Setting up locally -DevHive can be easily self-hosted on your computer or server. There currently aren't any demo instances, so the only way to see it for yourself it to set it up. +There currently aren't any demo instances, so the only way to try it out for yourself it to set it up locally, on a computer or server. In this section are explained the steps to do so. -This tutorial is geared towards Linux-based systems. +The steps are oriented around Linux-based systems. ### Prerequisites @@ -20,14 +20,14 @@ There are some things you need to setup before even downloading the app. Back-end (API) tools: - [`dotnet 5.0`](https://docs.microsoft.com/en-us/dotnet/core/install/linux) or later -- [`Entity Framework Core tool 5.0.2`](https://docs.microsoft.com/en-us/ef/core/cli/dotnet) or later +- [`Entity Framework Core tool 5.0.2`](https://docs.microsoft.com/en-us/ef/core/cli/dotnet) or greater - if you've already installed `dotnet`, you can just run this command `dotnet tool install dotnet-ef -g` -- [`postresql 13.1`](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-20-04) or later (older versions might work, but haven't been tested) +- [`postresql 13.1`](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-20-04) or greater (older versions might work, but haven't been tested) - Fedora users could also refer to [this](https://computingforgeeks.com/how-to-install-postgresql-12-on-fedora/) guide - Arch users can refer to the [ArchWiki](https://wiki.archlinux.org/index.php/PostgreSQL) Front-end tools: -- [`Angular CLI 11.0`](https://www.tecmint.com/install-angular-cli-on-linux/) or later (older versions might work, but haven't been tested) +- [`Angular CLI 11.0.6`](https://www.tecmint.com/install-angular-cli-on-linux/) or greater (older versions might work, but haven't been tested) ### Getting started with the database @@ -42,27 +42,28 @@ After installing all of the tools and setting up the database, you should have a 1. Navigate to the `src/DevHive.Web` folder 2. Edit the `appsettings.json` file, under "ConnectionStrings", type in the values, you setup in `ConnectionString.json` in `DevHive.Data` - - On the third row there is a "Secret", it's used for encryption of User password, you can change it **but it must be made up of 64 letters and number!** + - On the third row there is a "Secret" field, it's used for encryption of User passwords, you can change it **but it must be made up of 64 letters and number!** - There are also some cloud values that you can change. Currently, the project uses [Cloudinary](https://cloudinary.com/) as a place for uploading files. If you wish, you can setup your own account there, otherwise file uploading won't work. 3. Run `dotnet run` in the `DevHive.Web` folder - feel free to [run the command in background](https://linuxize.com/post/how-to-run-linux-commands-in-background/) or [create a systemd service](https://medium.com/@benmorel/creating-a-linux-service-with-systemd-611b5c8b91d6) -If everything went well, you can now access the API on `http://localhost:5000/api` with something like [Postman](https://www.postman.com/) or the FOSS [Insomnia Designer](https://github.com/Kong/insomnia). Refer to the [API Endpoints](https://github.com/Team-Kaleidoscope/DevHive/wiki/API-Endpoints) page in the Wiki. +If everything went well, you can now access the API on `http://localhost:5000/api` with something like [Postman](https://www.postman.com/) or the FOSS alternative [Insomnia Designer](https://github.com/Kong/insomnia). On where to send requests, refer to the [API Endpoints](https://github.com/Team-Kaleidoscope/DevHive/wiki/API-Endpoints) page in the Wiki. ### Starting up the Front-end 1. Navigate to `src/DevHive.Angular` -2. Run `npm install` -3. Run `ng serve` +2. Run `npm install` to install all front-end packages +3. Run `ng serve` to start up the front-end - as with the API, you can [run the command in background](https://linuxize.com/post/how-to-run-linux-commands-in-background/) or [create a systemd service](https://medium.com/@benmorel/creating-a-linux-service-with-systemd-611b5c8b91d6) -If nothing broke, you can now access the front-end from `http://localhost:4200`. Also, don't forget that the API needs to be running *at the same time*, otherwise you won't get beyond the login and register screens! +If everything went smoothly, you will be able to access the front-end from `http://localhost:4200`. Also, don't forget that the API needs to be running *at the same time*, otherwise you won't get beyond the Login and Register pages! -## Important notes +### Important notes -You can change on what port the API is ran, by changing the `HTTP_PORT` constant in `src/DevHive.Web/Program.cs`. If you do so, you **must** also update the front-end, because by default it will try to send requests to port 5000. Go to `src/DevHive.Angular/src/app` and edit the `app-constants.module.ts` file, on the second row you're gonna see the variable `BASE_API_URL`, change it accoring to your API modifications. +You can change on what port the API is ran, by changing the `HTTP_PORT` constant in `src/DevHive.Web/Program.cs`. If you do so, you **must** also update the front-end, because by default it will try to send requests to `http://localhost:5000`. +- Go to `src/DevHive.Angular/src/app` and edit the `app-constants.module.ts` file, on the second row you're gonna see the variable `BASE_API_URL`, change it accoring to your API modifications. -You can change on what port the Front-end is ran, by issueing the serve command with the `--port` parameter: `ng serve --port 5001`. But, **don't run it with the `--ssl` parameter!** SSL isn't supported yet, so it will throw errors! As an alternative, if you need ssl, is using a [reverse proxy](https://www.cloudflare.com/learning/cdn/glossary/reverse-proxy/). +You can change on what port the front-end is ran, by issuing the serve command with the `--port` parameter: `ng serve --port 5001`. But, **don't run it with the `--ssl` parameter!** SSL isn't supported yet and you'll have issues trying to use it! If you really need ssl, using a [reverse proxy](https://www.cloudflare.com/learning/cdn/glossary/reverse-proxy/) might be a viable alternative. ## Screenshots -- cgit v1.2.3 From ebf48cc5ad48199f0af9b8535c395b28f32b73a6 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 4 Feb 2021 17:41:01 +0200 Subject: Added contents of the "Setting up locally" section in README --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'README.md') diff --git a/README.md b/README.md index caa4cfd..c02f1e4 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,13 @@ DevHive is the social network solution for programmers. In it you can make posts It's built with [`ASP.NET Core`](https://docs.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core?view=aspnetcore-5.0) as a back-end and [`Angular`](https://angular.io/) as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). -### Contents: +## Contents: - [Setting up locally](#setting-up-locally) + - [Prerequisites](#prerequisites) + - [Getting started with the database](#getting-started-with-the-database) + - [Starting up the API](#starting-up-the-api) + - [Starting up the Front-end](#starting-up-the-front-end) + - [Important notes](#important-notes) - [Screenshots](#screenshots) ## Setting up locally -- cgit v1.2.3 From a82c21a79772217fd22e4b9e2b36a655804186c8 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Fri, 5 Feb 2021 14:49:33 +0200 Subject: Added a link to the privacy policy in README --- README.md | 2 ++ 1 file changed, 2 insertions(+) (limited to 'README.md') diff --git a/README.md b/README.md index c02f1e4..eca6aef 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,8 @@ DevHive is the social network solution for programmers. In it you can make posts It's built with [`ASP.NET Core`](https://docs.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core?view=aspnetcore-5.0) as a back-end and [`Angular`](https://angular.io/) as a front-end. For more technical information, you can refer to the [Wiki](https://github.com/Team-Kaleidoscope/DevHive/wiki). +In the Wiki you can also find our [Privacy Policy](https://github.com/Team-Kaleidoscope/DevHive/wiki/Privacy-Policy). + ## Contents: - [Setting up locally](#setting-up-locally) - [Prerequisites](#prerequisites) -- cgit v1.2.3