enchant97 / note-mark Goto Github PK
View Code? Open in Web Editor NEWNote Mark is a lighting fast and minimal; web-based Markdown notes app.
Home Page: https://notemark.docs.enchantedcode.co.uk/
License: GNU Affero General Public License v3.0
Note Mark is a lighting fast and minimal; web-based Markdown notes app.
Home Page: https://notemark.docs.enchantedcode.co.uk/
License: GNU Affero General Public License v3.0
While I will say this isn't a big problem because the app isn't deeply nested, it also feels like a pretty easy fix.
Short of it is the breadcrumbs are not clickable links like I would intuitively think.
Just change the <span>
tag in each of the breadcrumbs into an <a>
tag
No response
No response
The notebooks column on the left never loads. It continues to show the loading expanding circle, animation. Books and notes work properly when creating them and accessing them on the main section of the screen
From the demo, and screenshots, I should see a tree view of the books and notes I am adding as I add them. They never actually load.
macOS 14.4
Firefox 124.0.1
Apple Mac Mini M2 Pro
Docker Compose File:
note-mark:
container_name: note-mark
image: ghcr.io/enchant97/note-mark-aio:0.12.0
restart: unless-stopped
volumes:
- /opt/note-mark/data:/data
environment:
JWT_SECRET: "*SECRET*"
CORS_ORIGINS: "http://localhost:8000"
ports:
- '8000:8000'
Hi, very nice, slim app ๐
I am using a nginx reverse proxy and everthing works fine. I also enabled CORS (tried both *
and my TDLs) and using no cache...
When I enable my Authentik proxy forward auth/IDP the app tries to make an request to /api
which is forwarede to my IDP auth.TLD.com:
Access to fetch at 'https://auth.TLD.com/application/o/authorize/?client_id=EuOyaHfRyXXXXe.com%2Foutpost.goauthentik.io%2Fcallback%3FX-authentik-auth-callback%3DtrXXXXn8Q' (redirected from 'https://note.TLD.com/api/users/me') from origin 'https://note.TLD.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
This seems to fail because of missing CORS headers. Any Ideas on this?
No Error with a proxy forward auth setup.
No response
No response
No response
During the initialization page, if the original backend was configured incorrectly (i.e. wrong subpath in reverse proxy), and the page is run the first time, it will return a 404 (expected).
However, due to the lack of no-cache
, the GET request for backend:8000/api/info will automatically used the browser cache, even after fixing the site, resulting in a 404 despite the configuration now being correct.
If I mess up reverse proxy config that causes a 404 and then fixes it, I should still be able to validate the api server on login even without clearing/disabling cache.
Docker setups for both, with npm (node proxy manager) as the reverse proxy, connected through docker networks.
No response
If one wants to use his own IDP (proxy-forward-auth) you might want to disable auth in the app.
And/or implement OIDC/SAML to use an OAuth2 provider.
Disable auth in the app.
No response
No response
It's a bit annoying to have to click into a notebook before even being able to see the notes therein. I realize this is done for performance since you currently only ever fetch notes on a per-book basis, but you could populate more useful data with the same number of requests with a bit of tweaking to the API.
I propose a two-part solution:
No response
No response
When you chose distro-less docker images gcr.io/distroless/static-debian11
, please document how to use the CLI tools. There is no common way to access the shell via exec -it <shell>
Document that you will need to exec directly to the init commands such as:
kubectl exec -it --namespace= -- /note-mark
kubectl exec -it notemark-675c5fb966-tfk8c --namespace=notes -- /note-mark user -h
No response
No response
Doing a task list normally you setup what you need to do, them you go to your note and just check your progress. Needing to enter in the edit mode, make me feels like I'm just using a notepad that has a preview screen(that maybe I'll never use).
Making the render more useful to the user.
like github, you doesn`t need to enter the edit screen, at the render you can directly click in the checkbox to make that task completed.
No response
What is the path to export the data? I want to be sure it's backed up nightly.
After deployed the application using docker-compose, I connect to 127.0.0.1:8000 and fill in the form for creating an account, but the button CREATE USER never gets enabled and I can't create the account.
The account is created and I can login using the credentials
docker-compose.yml
version: "3"
volumes:
data:
services:
backend:
image: ghcr.io/enchant97/note-mark-backend:0.6.0
restart: unless-stopped
volumes:
- data:/data
environment:
# !!! REPLACE These !!!
JWT_SECRET: "bXktc2VjcmV0"
CORS_ORIGINS: "*"
ports:
- 8001:8000
frontend:
image: ghcr.io/enchant97/note-mark-frontend:0.6.0
restart: unless-stopped
ports:
- 8000:8000
sudo docker-compose up -d
P@ssword123
-> the button Create user is greyed outFedora 38 KDE
No response
Is the user search the only search, maybe I missed it? It might also be useful to search for notes.
Make all notes searchable.
No response
No response
On any cached queries when updated other clients will get a stale response, therefore the program will not work as expected.
Effects:
I would like to be able to copy the entire article to clipboard easily and rapidly. Ctrl-A doesn't work as it includes other content.
Please add a new button to the toolbar that indicates copy contents.
I would be willing to pay a small bounty to get this feature as it helps my workflow significantly.
Thank you
TBD
The spacing between itens list is too high
The spacing should be lower
Server
os: Manjaro
install method: Docker
Client
os: MacOS 13.0
browser: Chrome Version 116.0.5845.140 (Official Build) (arm64)
When creating a notebook, if you already have a notebook with the same slang, the API gives a error 500
Should create a new notebook, using the same slug but incremented in 1 at the end.
original slug: personal
new slug? personal-1
not doing that makes people need to remember every slug that already been used.
Server
os: Manjaro
install method: Docker
Client
os: MacOS 13.0
browser: Chrome Version 116.0.5845.140 (Official Build) (arm64)
No response
It would be nice to be able to sort notebooks and notes in different ways, according to current needs. This feature would make it easier to browse/find what we're currently looking for. It seems that now everything is sorted by creation time desc.
Add sorting options to both, notebooks and notes, lists/containers.
Optionally, this feature could also be extended with an option to set default sorting option for the whole app. Let's say that default sort is Z to A
. User can change sorting in the current session, but after reloading webpage, sorting will be back to the default Z to A
.
Example sorting options from Obsidian:
No response
Very promising project. Lately, I've been looking for something similar to Obsidian but simplified and with Web UI so Note Mark fits perfectly.
Looking forward to further updates and upcoming features. Great job and good luck!
I am the only user or I'll create another account as needed. I need to disable registration as this will sit on public facing network.
Set a env to disable please
to make easy editing notes and seeing the result os your changes.
at the edit tab it would have a option to split the edition to see the changes that you are making in real time preview.
maybe an auto-save on lose focus or change tabs, so I can see the rendered without losing the edited content
No response
Using the aio version, it still requesting the API server
Not ask for a API address
Update docker container to aio version and try to login
No response
No response
when you are in the editor mode and klick on the ... menu, the menu goes behind the button bar
menu should be in front
No response
MacOS
Safari /Edge Browser
No response
When you are editing a note, if you want to preview (render) what you are editing, you will loose all your changes if you don't click on save.
If this is the expected behaviour, it should at least alert the user that he will loose all the changes made so far and ask if he wants to go anyway, save and go, stay editing.
Server
os: Manjaro
install method: Docker
Client
os: MacOS 13.0
browser: Chrome Version 116.0.5845.140 (Official Build) (arm64)
No response
I just installed it and the ui is missing almost all features. I don't have any buttons to create notes:
Build using the following docker compose:
`# file: docker-compose.yml
version: "3"
volumes:
data:
services:
note-mark:
image: ghcr.io/enchant97/note-mark-aio:0.10
restart: unless-stopped
volumes:
- data:/data
environment:
# !!! REPLACE These !!!
JWT_SECRET: "***********"
CORS_ORIGINS: "https://example.com:8000"
ports:
- 80:8000`
Docker Engine Community V 24.0.6
Ubuntu 22.04.2 LTS
No response
Just like the starting-page-main-view recent notes, show the content of a folders in main view when selecting one folder.
Show the content of a folders when selecting one.
No response
No response
When I'm organizing my notes, I normally make folders and subfolders for context propose.
An example of structure:
without the habilite to make this subfolders, I would be hard to separate everything, or I would have many long named note or many long named notebooks.
Creating some path structure for the notebook, could be done using the / character inside the name of the notebook, just needing to render the tree in the frontend
Using the current solution, but with the option to re-order the notebook or to order alphabetically.
With the re-order option, I would be able to create the notebooks as needed, and order them manually to be "inside" the "father" path.
With the alphabetically ordered, I could make my notebooks start with a number so I can order them as I wish.
No response
The home page doesn't provide a whole lot of value to single-user setups because of the big empty "NOTEBOOKS" column on the left. I can see in the code you're only ever filling that with notes if the username URL param is provided:
Perhaps we can fill the notebooks column with some actual results while on the non-user-specific home page? There are a few options:
In fact, even all three of these could potentially get surfaced as different options, i.e. by throwing in a dropdown/tabs/radio group to select which you want to display
Obviously the main alternative solution would be to just remove the list altogether to reduce confusion since it doesn't get used, but that seems like a bit of a waste!
No response
Adding a "copy" button to a notes editor offers practical benefits, such as facilitating easy sharing and quick duplication. This feature preserves formatting, reduces user effort, ensures consistency in UI/UX, and enhances mobile-friendly functionality. The button also integrates with the clipboard, streamlining the process of copying and pasting content across applications. Overall, it contributes to a more efficient and user-friendly experience.
Add a copy button as shown in Notion's screenshot on the left. Using the code block here.
No response
No response
I am using a reverse proxy for auth, so I prefer not having to re-login to the KB every day.
Can you provide a docker env var to disable authentication and just set a default username? Or can you provide a mechanism to set the cookie expiration to a far away date.
No response
No response
I'm able to attach a PDF file and add a link to it in my note, but it's difficult to access the file.
Clicking the link in my note (/api/notes/xxx/assets/xxx
) produces a 200 response with Content-Type: text/html
and renders a blank page.
Refreshing the page in Firefox and Chrome will continue to produce the same text/html
response. A hard-refresh will bypass the browser cache and produce the appropriate Content-Type: application/pdf
response. Accessing the attachment via curl also returns the correct Content-Type
header.
Once the PDF is finally rendered in-browser (after hard-refresh), the browser's back button becomes non-functional and only adjusts the URL in the browser's URL bar but does not navigate away from the PDF.
This seems to be an issue with how the client-side code in the front-end web app renders responses returned by the backend server.
Accessing file attachments while navigating from the web app should produce proper Content-Type header responses.
Cool project, thanks for building this.
I'm trying to deploy this for friends/family but the workarounds are not practical for non-technical users.
When updating user full-name a error is shown (error 500).
User details are updated
No response
No response
I created two titles and I need to delete one - because the slug is different is showcases both of them.
Add an option to remove a book.
No response
No response
Low priority.
When opening Notes-Mark on my docker install only on the app Mull on Android loading the page does not work. All I get is a white loading page with a spinning wheel.
Using a browser that isn't hardened works perfectly and as expected.
Web page opens normally.
No response
No response
No response
sometimes you need to share a note with other people, or easily print it. it is much more convenient to send a pdf file instead of a link, especially if instance is not publically available.
implement PDF export, possibly other formats like html. it is implemented well in Joplin desktop editor (so you could see an example).
none, at lease from project description/roadmap.
No response
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.