Skip to content

Commit ebfa38f

Browse files
asimexedev-shelley
andcommitted
Remove Notes feature
- Delete notes/ package - Remove from nav, index page, README, docs - Remove API endpoints - Remove notes.png icon Co-authored-by: Shelley <shelley@exe.dev>
1 parent 1b9b692 commit ebfa38f

12 files changed

Lines changed: 0 additions & 1248 deletions

File tree

PURPOSE.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,6 @@ Anthropics "constitution" defines their values. We use their tool for technical
166166
| **mail/** | Email/messaging | Yes - communication |
167167
| **wallet/** | Credits + crypto | Yes - sustainability |
168168
| **news/** | RSS aggregation | Yes - curated content |
169-
| **notes/** | Personal notes | Yes - private utility |
170169
| **chat/** | Contextual Q&A | Yes - RAG-powered |
171170
| **video/** | YouTube integration | Maybe - big tech dependency |
172171
| **blog/** | Microblogging | Maybe - community feature |

README.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ Mu is a collection of tools for everyday use. While other platforms monetize you
1717
- **Chat** - Group discussions
1818
- **News** - RSS feeds with AI summaries
1919
- **Video** - Watch YouTube without ads
20-
- **Notes** - Quick capture with tags, pins, and search
2120
- **Mail** - Private messaging & email
2221
- **Audio** - Podcasts and audio content
2322
- **Wallet** - Credits and crypto payments
@@ -32,7 +31,6 @@ Mu runs as a single Go binary on your own server or use the hosted version at [m
3231
- [x] Blog - Micro blogging
3332
- [x] Chat - Discussion rooms
3433
- [x] News - RSS news feed
35-
- [x] Notes - Personal notes
3634
- [x] Video - YouTube search
3735
- [x] Mail - Private messaging
3836
- [x] Wallet - Crypto payments (ETH, USDC, ERC-20)
@@ -44,7 +42,6 @@ Some features are enhanced with AI:
4442

4543
- **News** - Summarize articles
4644
- **Chat** - Knowledge assistant for discussions
47-
- **Notes** - Auto-tagging and smart search
4845

4946
## Screenshots
5047

api/api.go

Lines changed: 0 additions & 203 deletions
Original file line numberDiff line numberDiff line change
@@ -533,209 +533,6 @@ func init() {
533533
},
534534
})
535535

536-
// Notes endpoints
537-
Endpoints = append(Endpoints, &Endpoint{
538-
Name: "List Notes",
539-
Path: "/notes",
540-
Method: "GET",
541-
Description: "Get all notes for authenticated user",
542-
Response: []*Value{
543-
{
544-
Type: "JSON",
545-
Params: []*Param{
546-
{
547-
Name: "notes",
548-
Value: "array",
549-
Description: "Array of note objects with id, title, content, tags, created_at, updated_at",
550-
},
551-
},
552-
},
553-
},
554-
})
555-
556-
Endpoints = append(Endpoints, &Endpoint{
557-
Name: "Get Note",
558-
Path: "/notes/{id}",
559-
Method: "GET",
560-
Description: "Get a single note by ID",
561-
Response: []*Value{
562-
{
563-
Type: "JSON",
564-
Params: []*Param{
565-
{
566-
Name: "id",
567-
Value: "string",
568-
Description: "Note ID",
569-
},
570-
{
571-
Name: "title",
572-
Value: "string",
573-
Description: "Note title",
574-
},
575-
{
576-
Name: "content",
577-
Value: "string",
578-
Description: "Note content",
579-
},
580-
{
581-
Name: "tags",
582-
Value: "array",
583-
Description: "Note tags",
584-
},
585-
},
586-
},
587-
},
588-
})
589-
590-
Endpoints = append(Endpoints, &Endpoint{
591-
Name: "Create Note",
592-
Path: "/notes/new",
593-
Method: "POST",
594-
Description: "Create a new note",
595-
Params: []*Param{
596-
{
597-
Name: "title",
598-
Value: "string",
599-
Description: "Note title (optional)",
600-
},
601-
{
602-
Name: "content",
603-
Value: "string",
604-
Description: "Note content (required)",
605-
},
606-
{
607-
Name: "tags",
608-
Value: "string",
609-
Description: "Comma-separated tags",
610-
},
611-
},
612-
Response: []*Value{
613-
{
614-
Type: "JSON",
615-
Params: []*Param{
616-
{
617-
Name: "success",
618-
Value: "boolean",
619-
Description: "Whether the note was created",
620-
},
621-
{
622-
Name: "id",
623-
Value: "string",
624-
Description: "The created note ID",
625-
},
626-
},
627-
},
628-
},
629-
})
630-
631-
Endpoints = append(Endpoints, &Endpoint{
632-
Name: "Update Note",
633-
Path: "/notes/{id}",
634-
Method: "POST",
635-
Description: "Update an existing note",
636-
Params: []*Param{
637-
{
638-
Name: "title",
639-
Value: "string",
640-
Description: "Note title",
641-
},
642-
{
643-
Name: "content",
644-
Value: "string",
645-
Description: "Note content (required)",
646-
},
647-
{
648-
Name: "tags",
649-
Value: "string",
650-
Description: "Comma-separated tags",
651-
},
652-
{
653-
Name: "pinned",
654-
Value: "boolean",
655-
Description: "Pin the note",
656-
},
657-
{
658-
Name: "color",
659-
Value: "string",
660-
Description: "Note color (yellow, green, blue, pink, purple, gray)",
661-
},
662-
},
663-
Response: []*Value{
664-
{
665-
Type: "JSON",
666-
Params: []*Param{
667-
{
668-
Name: "success",
669-
Value: "boolean",
670-
Description: "Whether the note was updated",
671-
},
672-
{
673-
Name: "id",
674-
Value: "string",
675-
Description: "The updated note ID",
676-
},
677-
},
678-
},
679-
},
680-
})
681-
682-
Endpoints = append(Endpoints, &Endpoint{
683-
Name: "Delete Note",
684-
Path: "/notes/{id}/delete",
685-
Method: "GET",
686-
Description: "Delete a note (redirects to /notes)",
687-
Response: []*Value{
688-
{
689-
Type: "Redirect",
690-
Params: []*Param{
691-
{
692-
Name: "location",
693-
Value: "string",
694-
Description: "Redirects to /notes",
695-
},
696-
},
697-
},
698-
},
699-
})
700-
701-
Endpoints = append(Endpoints, &Endpoint{
702-
Name: "Archive Note",
703-
Path: "/notes/{id}/archive",
704-
Method: "GET",
705-
Description: "Toggle note archive status",
706-
Response: []*Value{
707-
{
708-
Type: "Redirect",
709-
Params: []*Param{
710-
{
711-
Name: "location",
712-
Value: "string",
713-
Description: "Redirects back to note or /notes",
714-
},
715-
},
716-
},
717-
},
718-
})
719-
720-
Endpoints = append(Endpoints, &Endpoint{
721-
Name: "Pin Note",
722-
Path: "/notes/{id}/pin",
723-
Method: "GET",
724-
Description: "Toggle note pinned status",
725-
Response: []*Value{
726-
{
727-
Type: "Redirect",
728-
Params: []*Param{
729-
{
730-
Name: "location",
731-
Value: "string",
732-
Description: "Redirects back to note or /notes",
733-
},
734-
},
735-
},
736-
},
737-
})
738-
739536
// Flag endpoint
740537
Endpoints = append(Endpoints, &Endpoint{
741538
Name: "Flag Content",

app/app.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,6 @@ var Template = `
212212
<a href="/chat"><img src="/chat.png"><span class="label">Chat</span></a>
213213
<a id="nav-mail" href="/mail"><img src="/mail.png"><span class="label">Mail</span><span id="nav-mail-badge"></span></a>
214214
<a href="/news"><img src="/news.png"><span class="label">News</span></a>
215-
<a href="/notes"><img src="/notes.png"><span class="label">Notes</span></a>
216215
<a href="/video"%s><img src="/video.png"><span class="label">Video</span></a>
217216
<a id="nav-wallet" href="/wallet"><img src="/wallet.png"><span class="label">Wallet</span></a>
218217
</div>

app/html/index.html

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -89,14 +89,6 @@ <h3>Features</h3>
8989
</div>
9090
</a>
9191

92-
<a href="/notes" style="text-decoration: none; color: inherit;">
93-
<div class="block">
94-
<img src="/notes.png" alt="Notes" style="width: 32px; height: 32px; margin-bottom: 8px;">
95-
<b>Notes</b>
96-
<div class="small">Quick capture with tags, pins and search</div>
97-
</div>
98-
</a>
99-
10092
<a href="/mail" class="block">
10193
<img src="/mail.png" alt="Mail" style="width: 32px; height: 32px; margin-bottom: 8px;">
10294
<b>Mail</b>

app/html/notes.png

-404 Bytes
Binary file not shown.

claude.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ The Micro Network - simple, useful tools without ads, algorithms, or tracking. L
1616
No ads, no algorithms, no tracking. Simple tools that respect your time.
1717

1818
## Core Features
19-
- **Notes** - Quick capture with tags, pins and search
2019
- **Mail** - Message other users, receive external email
2120
- **News** - RSS aggregation with AI summaries
2221
- **Video** - YouTube without ads/algorithms/shorts
@@ -36,7 +35,6 @@ No ads, no algorithms, no tracking. Simple tools that respect your time.
3635

3736
| Package | Purpose |
3837
|---------|---------|
39-
| **notes/** | Personal notes with tags, search |
4038
| **mail/** | Email (SMTP server + client) |
4139
| **news/** | RSS aggregation + summaries |
4240
| **video/** | YouTube search/play |
@@ -94,8 +92,6 @@ BASE_RPC_URL # Default: https://mainnet.base.org
9492

9593
### Layout Helpers
9694
```go
97-
app.SearchBar("/notes", "Search notes...", query)
98-
app.ActionLink("/notes/new", "+ New Note")
9995
app.Grid(content) // .card-grid - responsive grid
10096
app.List(content) // .card-list - vertical stack
10197
app.CardDiv(content)
@@ -104,10 +100,8 @@ app.Empty("No items yet")
104100

105101
### Element Builders
106102
```go
107-
app.Title("My Note", "/notes/123")
108103
app.Desc("Description text")
109104
app.Meta("by author · 2h ago")
110-
app.Tags([]string{"tag1", "tag2"}, "/notes?tag=")
111105
```
112106

113107
## Crypto Wallet

docs/ABOUT.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ Each feature does one thing well:
3737
- **Chat** — Group discussions
3838
- **News** — RSS feeds, chronological
3939
- **Video** — YouTube without ads or shorts
40-
- **Notes** — Quick capture with tags and search
4140
- **Mail** — Private messaging & email
4241
- **Audio** — Podcasts and audio content
4342

@@ -64,7 +63,6 @@ Some features are enhanced with AI:
6463

6564
- **News** — Summarize articles
6665
- **Chat** — Knowledge assistant for discussions
67-
- **Notes** — Auto-tagging and smart search
6866

6967
AI is a tool, not the product. It helps when useful, stays out of the way otherwise.
7068

docs/API_COVERAGE.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,6 @@ This document covers the REST API for programmatic access to Mu.
3232
-**Get Latest Videos** - `GET /video` (returns JSON with Accept: application/json)
3333
-**Search Videos** - `POST /video`
3434

35-
### Notes
36-
-**List Notes** - `GET /notes` (returns JSON with Accept: application/json)
37-
-**Get Note** - `GET /notes/{id}` (returns JSON with Accept: application/json)
38-
-**Create Note** - `POST /notes/new`
39-
-**Update Note** - `POST /notes/{id}`
40-
-**Delete Note** - `GET /notes/{id}/delete`
41-
-**Archive Note** - `GET /notes/{id}/archive`
42-
-**Pin Note** - `GET /notes/{id}/pin`
4335

4436
### User Profiles
4537
-**Get User Profile** - `GET /@{username}`

main.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ import (
2424
"mu/audio"
2525
"mu/mail"
2626
"mu/news"
27-
"mu/notes"
2827
"mu/user"
2928
"mu/video"
3029
"mu/wallet"
@@ -69,8 +68,6 @@ func main() {
6968
// load the blog
7069
blog.Load()
7170

72-
// load notes
73-
notes.Load()
7471

7572
// load the mail (also configures SMTP and DKIM)
7673
mail.Load()
@@ -143,9 +140,6 @@ func main() {
143140
// handle comments on posts /post/{id}/comment
144141
http.HandleFunc("/post/", blog.CommentHandler)
145142

146-
// serve notes
147-
http.HandleFunc("/notes", notes.Handler)
148-
http.HandleFunc("/notes/", notes.Handler)
149143

150144
// flag content
151145
http.HandleFunc("/flag", admin.FlagHandler)

0 commit comments

Comments
 (0)