You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Docker](https://www.docker.com/) - containerized builds and deployment
41
43
-[Eleven Giants](http://www.elevengiants.com/) - helped with extraction of avatars from the Glitch public domain game art
42
44
-[Favicon Generator. For real.](https://realfavicongenerator.net/) - generate icons for many platforms
43
45
-[GitHub](https://github.com/) - hosts the source code, issue tracker, Wiki, [www.greatreadingadventure.com](http://www.greatreadingadventure.com/) and more
@@ -78,6 +80,10 @@ The Great Reading Adventure uses open source components. You can find informatio
78
80
- JQuery multiselect plugin based on Twitter Bootstrap [Bootstrap-Multiselect](http://davidstutz.github.io/bootstrap-multiselect/)
79
81
- Source on GitHub: [davidstutz/bootstrap-multiselect](https://github.com/davidstutz/bootstrap-multiselect) - [Apache License, Version 2.0 & BSD-3-Clause](https://github.com/davidstutz/bootstrap-multiselect/blob/master/LICENSE.md)
80
82
83
+
### CommandLineUtils
84
+
- Command line parsing and utilities for .NET Core and .NET Framework
85
+
- Source on GitHub: [natemcmaster/CommandLineUtils](https://github.com/natemcmaster/CommandLineUtils) - [Apache License, Version 2.0](https://github.com/natemcmaster/CommandLineUtils/blob/master/LICENSE.txt)
86
+
81
87
### CommonMark.js
82
88
-[CommonMark](http://commonmark.org/) parser and renderer in JavaScript
83
89
- Source on GitHub: [jgm/commonmark.js](https://github.com/jgm/commonmark.js) - [MIT License](https://github.com/jgm/commonmark.js/blob/master/LICENSE)
Copy file name to clipboardExpand all lines: README.md
+3-5Lines changed: 3 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,9 @@
1
1
# The Great Reading Adventure
2
2
The Great Reading Adventure is a robust, open source software designed to manage library reading programs. The GRA is free to use, modify, and share. Check out [www.greatreadingadventure.com](http://www.greatreadingadventure.com/) for an overview of its functionality and capabilities.
3
3
4
-
You can view the latest [release notes](https://github.com/MCLD/greatreadingadventure/releases/latest) or **[download the latest version (4.0.0)](https://github.com/MCLD/greatreadingadventure/releases/download/v4.0.0/GreatReadingAdventure-4.0.0.zip)**.
4
+
You can view the latest [release notes](https://github.com/MCLD/greatreadingadventure/releases/latest) or **[download the latest version (4.1.0)](https://github.com/MCLD/greatreadingadventure/releases/download/v4.1.0/GreatReadingAdventure-4.1.0.zip)**.
5
5
6
-
**Version 4 of The Great Reading Adventure has been rewritten using the [Microsoft .NET Core v1.1 framework](https://en.wikipedia.org/wiki/.NET_Framework#.NET_Core).** This version of the GRA is cross-platform (working in Linux, macOS, and Windows). In order to run the current version your server must have the appropriate [.NET Core 1.1.x Runtime](https://www.microsoft.com/net/download/all) installed. If you do not wish to use install the .NET Core runtime, you can use our prior release: [The Great Reading Adventure v3.1.0](https://github.com/MCLD/greatreadingadventure/releases/tag/v3.1.0).
6
+
**Version 4 of The Great Reading Adventure has been rewritten using the [Microsoft .NET Core framework](https://en.wikipedia.org/wiki/.NET_Framework#.NET_Core).** This version of the GRA is cross-platform (working in Linux, macOS, and Windows). For information on installing this version please review the [System requirements](http://manual.greatreadingadventure.com/en/latest/installation/system-requirements/) in the manual. If you do not wish to use the .NET Core runtime, you can use a prior release: [The Great Reading Adventure v3.1.0](https://github.com/MCLD/greatreadingadventure/releases/tag/v3.1.0).
7
7
8
8
## Stuck? Need help?
9
9
You can visit the [Great Reading Adventure Forum](http://forum.greatreadingadventure.com/) for the following:
@@ -14,14 +14,12 @@ You can visit the [Great Reading Adventure Forum](http://forum.greatreadingadven
14
14
*[Suggesting new features](http://forum.greatreadingadventure.com/c/feature-requests)
15
15
16
16
## Development
17
-
The [`master`](https://github.com/mcld/greatreadingadventure/tree/master) branch contains the latest release, active development occurs on the [`develop`](https://github.com/mcld/greatreadingadventure/tree/develop) branch.
17
+
The [`master`](https://github.com/mcld/greatreadingadventure/tree/master) branch contains the latest release, active development occurs on the [`develop`](https://github.com/mcld/greatreadingadventure/tree/develop) branch. Developer documentation can be found [in the project](dev/); developers can be reached [on the forums](http://forum.greatreadingadventure.com/).
18
18
19
19
| Windows build | Linux build | Codacy | Documentation |
Want to help us develop The Great Reading Adventure software? Some developer documentation can be found [in the project](dev/) and the development team can always be reached [on the forums](http://forum.greatreadingadventure.com/).
24
-
25
23
## License
26
24
The Great Reading Adventure source code is distributed under [The MIT License](http://opensource.org/licenses/MIT). For other included packages, please see the [CREDITS.md](CREDITS.md) file.
Copy file name to clipboardExpand all lines: dev/README.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,8 @@
4
4
5
5
GRA code should successfully compile using the free [Visual Studio Community](https://www.visualstudio.com/vs/community/) edition. External dependencies are managed with NuGet and should be automatically downloaded upon the first build.
6
6
7
+
Version 4.0.0 (the last major release) was developed with the ASP.NET Core v1.1 runtime; version 4.1.0 is under development with the ASP.NET Core 2.1 runtime.
8
+
7
9
By default, GRA is configured to use LocalDB as a database for development and testing. While not packaged with Visual Studio Community, it can easily be added by selecting the notification flag in the title bar of Visual Studio and choosing to install the "MS SQL Server Update for database tooling". Alternately, the [SQL Server Data Tools (SSDT)](https://msdn.microsoft.com/en-us/library/hh272686.aspx) package can be installed manually by downloading it from Microsoft.
8
10
9
11
If you have any trouble getting the package to build, please submit an [issue](https://github.com/MCLD/greatreadingadventure/issues/new) with details.
@@ -22,7 +24,7 @@ The `master` branch represents the latest release and the `develop` branch conta
22
24
- Follow the [initial developer setup](initial-developer-setup.md) guidance.
23
25
- Examine guidance for [adding an entity](adding-an-entity.md) if necessary.
24
26
- We try to adhere to [domain-driven design](https://en.wikipedia.org/wiki/Domain-driven_design) with varying levels of success.
Copy file name to clipboardExpand all lines: dev/initial-developer-setup.md
+28-8Lines changed: 28 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,8 +6,6 @@
6
6
- Linux, macOS, Windows: [Visual Studio Code](https://code.visualstudio.com/)
7
7
- Ensure you [install the C# extension](https://code.visualstudio.com/docs/runtimes/dotnet)
8
8
9
-
*The project has been migrated to use Visual Studio 2017 `.csproj` files and no longer uses the `project.json` project files as in Visual Studio 2015.*
10
-
11
9
## Initial developer setup
12
10
13
11
#### *Due to changes in the data model during development, the project only ships with database migrations in place for releases. You will need to run the command below if there have been any database changes in the `develop` branch since the last release.*
@@ -16,28 +14,50 @@ The project ships with the Microsoft SQL Server data provider configured. If you
16
14
17
15
### Database migration
18
16
19
-
Initial database setup and configuration can be done utilizing the [`dotnet ef`](https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/dotnet) command line tool or the [Package Manager Console](https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell). Here are steps for using `dotnet ef`:
17
+
Initial database setup and configuration can be done utilizing the [`dotnet ef`](https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/dotnet) command line tool or the [Package Manager Console](https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell).
18
+
19
+
Connection strings for creating migrations are located in the `GRA.Development` namespace and mirror the definitions in the default `appsettings.json` file.
20
+
21
+
Here are steps for using `dotnet ef`:
20
22
21
23
1. Navigate to the appropriate project directory for your database provider (e.g. `src/GRA.Data.SqlServer` or `src/GRA.Data.SQLite`).
22
-
2.Check if a database migration exists:
24
+
2.See a list of existing migrations:
23
25
24
26
dotnet ef -s ../GRA.Web migrations list
25
27
26
-
3.If no migrations exist, create one:
28
+
3.Add a new migration for development:
27
29
28
30
dotnet ef -s ../GRA.Web migrations add develop
29
31
30
32
4. Create or update the database to the migration (necessary for SQLite, possibly not for SQL Server but won't hurt):
31
33
32
34
dotnet ef -s ../GRA.Web database update
33
35
36
+
Here are steps for using the Package Manager Console:
37
+
38
+
1. Choose the appropriate project from the "Default project" drop-down (e.g. `src/GRA.Data.SqlServer` or `src/GRA.Data.SQLite`).
39
+
2. Check if a database migration exists by looking for a folder named "Migrations" in the appropriate GRA.Data project.
40
+
3. Add a new migration for development:
41
+
42
+
Add-Migration develop
43
+
44
+
4. Create or update the database to the migration (necessary for SQLite, possibly not for SQL Server but won't hurt):
45
+
46
+
Update-Database
47
+
48
+
Please remove any non-release migrations when contributing code back to the project.
49
+
34
50
### Configuration
35
51
36
-
The `GRA.Web` project has the [Secret Manager](https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets#secret-manager) enabled. You may want to issue a command such as:
52
+
During development, User Secrets are the easiest way to customize the configuration without the risk of committing sensitive data to a source control repository. One key setting you may want to configure is `GraEmailOverride`. You can do that by right-clicking on the "GRA.Web" project and choosing "Manage User Secrets." Configure the `secrets.json` like this:
37
53
38
-
dotnet user-secrets set GraEmailOverride your@email.address
54
+
```json
55
+
{
56
+
"GraEmailOverride": "your@email.address"
57
+
}
58
+
```
39
59
40
-
To ensure that no errant emails are sent out during development. There are other settings you may want to configure through this manner such as `GraDefaultOutgoingMailHost` and `GraDefaultOutgoingMailPort`. Review `Startup.cs` for more configuration settings.
60
+
This will ensure that no errant emails are sent out during development. There are other settings you may want to configure through this manner such as `GraDefaultOutgoingMailHost` and `GraDefaultOutgoingMailPort`. Review [the documentation](http://manual.greatreadingadventure.com/en/latest/technical/appsettings/) for more configuration settings.
0 commit comments