diff --git a/README.md b/README.md index 56ffa01..68f6976 100644 --- a/README.md +++ b/README.md @@ -52,6 +52,31 @@ Rolens is designed to be as intuitive as possible. But if something is unclear n Feel free to contact me if you have questions! [Send an e-mail.](mailto:romein@vburen.nl) +## Feature list + +At this point, Rolens is comparable to MongoHub regarding features. It cannot handle things like user management _yet_, but it _does_ have: + +* Connecting to hosts + - Host status + - System info +* Database management + - See stats + - Create dumps with `mongodump` +* Collections + - See stats + - Find, insert, update, & remove + - Save queries to reuse them + - Customizable table view for query results + - Versatile forms to enter data in a standardized format + - Aggregation pipeline editor + - Fully customizable export to a number of formats like JSON, CSV, and Excel + - Index editor + +## Wishlist + +* User management +* Shell _([under development](https://github.com/garraflavatra/rolens/pull/44))_ + ## Author and license © [Romein van Buren](mailto:romein@vburen.nl) 2023. The source code and compiled binaries are released under the GNU GPLv3 license — see [`LICENSE`](./LICENSE) for the full license text. diff --git a/docs/development/changelog.md b/docs/colophon/changelog.md similarity index 54% rename from docs/development/changelog.md rename to docs/colophon/changelog.md index f945919..e22066b 100644 --- a/docs/development/changelog.md +++ b/docs/colophon/changelog.md @@ -1,6 +1,7 @@ --- title: Changelog -parent: Development +summary: The development history of Rolens. +parent: Colophon order: 90 --- diff --git a/docs/colophon.md b/docs/colophon/index.md similarity index 100% rename from docs/colophon.md rename to docs/colophon/index.md diff --git a/docs/development.md b/docs/development.md index 4ef68c4..1fe6716 100644 --- a/docs/development.md +++ b/docs/development.md @@ -1,5 +1,6 @@ --- title: Development +summary: In-depth information about Rolens source code. order: 50 --- diff --git a/docs/index.md b/docs/index.md index c27c8dd..27ea915 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,5 +1,5 @@ --- -title: +title: Rolens order: 1 summary: Robust, blazing-fast, comprehensive, yet simple [MongoDB](https://www.mongodb.com/) administration tool for Windows, macOS and Linux. eleventyNavigation: @@ -18,3 +18,11 @@ This project arose from all flaws of similar tools many of which are slow, compl ![Impression of Rolens's interface](./images/home-impression.png) This project is heavily inspired by the excellent [MongoHub](https://github.com/bububa/MongoHub-Mac) application, which sadly has not been updated since 2011. + +## Features + +{% filecontent "../README.md", "## Feature list", "## " %} + +## Wishlist + +{% filecontent "../README.md", "## Wishlist", "## " %} diff --git a/docs/installation.md b/docs/installation.md index 2d0c17f..996c97e 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -1,5 +1,6 @@ --- title: Installation +summary: Install Rolens on your machine. order: 20 --- diff --git a/docs/user-guide/preferences.md b/docs/user-guide/preferences.md index d473430..b87b261 100644 --- a/docs/user-guide/preferences.md +++ b/docs/user-guide/preferences.md @@ -4,7 +4,7 @@ parent: User guide order: 100 --- -You can open the preference panel by using the menu Rolens > Settings… or by typing {% render "shortcut", shortcut: shortcuts.preferences[0] %}. +You can open the preference panel by using the menu Rolens > Settings… or by pressing ,. Rolens currently offers the following configuration options: diff --git a/frontend/src/organisms/connection/collection/aggregate.svelte b/frontend/src/organisms/connection/collection/aggregate.svelte index 4a730e1..8a9d8b2 100644 --- a/frontend/src/organisms/connection/collection/aggregate.svelte +++ b/frontend/src/organisms/connection/collection/aggregate.svelte @@ -103,7 +103,7 @@ - + settingsModalOpen = false}>
diff --git a/internal/app/app_menu.go b/internal/app/app_menu.go index 365f03f..d15c073 100644 --- a/internal/app/app_menu.go +++ b/internal/app/app_menu.go @@ -87,7 +87,7 @@ func (a *App) Menu() *menu.Menu { helpMenu.AddText("Ask a question", nil, menuCallbackOpenURL(a, "https://github.com/garraflavatra/rolens/discussions/new?category=questions")) helpMenu.AddSeparator() helpMenu.AddText("Star Rolens on GitHub", nil, menuCallbackOpenURL(a, "https://github.com/garraflavatra/rolens")) - helpMenu.AddText("Changelog", nil, menuCallbackOpenURL(a, "https://garraflavatra.github.io/rolens/development/changelog/")) + helpMenu.AddText("Changelog", nil, menuCallbackOpenURL(a, "https://garraflavatra.github.io/rolens/colophon/changelog/")) helpMenu.AddText("License", nil, menuCallbackOpenURL(a, "https://github.com/garraflavatra/rolens/blob/main/LICENSE")) return appMenu diff --git a/website/.eleventy.js b/website/.eleventy.js index d3cd2dc..5b867bc 100644 --- a/website/.eleventy.js +++ b/website/.eleventy.js @@ -90,10 +90,21 @@ module.exports = function (eleventyConfig) { }); // Retrieve content of a file - eleventyConfig.addShortcode('filecontent', function (fname, startLine = 0) { - const buf = fs.readFileSync(path.join(indir, fname)); - const str = buf.toString().split('\n').slice(startLine).join('\n'); - return str; + eleventyConfig.addShortcode('filecontent', function (fname, a, b) { + let str = fs.readFileSync(path.join(indir, fname)).toString(); + + if (typeof a === 'number') { + // Line indexes + str = str.split('\n').slice(a, b).join('\n'); + } + else if (typeof a === 'string') { + // Anchors + const aIndex = str.indexOf(a) + a.length; + const bIndex = b ? str.indexOf(b, aIndex) : undefined; + str = str.slice(aIndex, bIndex); + } + + return str.trim(); }); // Global options