Skip to content

Commit 3d694e6

Browse files
committed
Rename project from AivoMind to MindMapFlow and update related references. Add privacy and terms of service texts. Add small toolbar on top of selected node.
1 parent 8b2e1f6 commit 3d694e6

File tree

18 files changed

+532
-38
lines changed

18 files changed

+532
-38
lines changed

.github/copilot-instructions.ms

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
We use Tailwind class names instead of CSS files.
2+
We use MUI React UI components for consistent look and feel.
3+
Application should be usable on both desktop as well as mobile so we use responsive design.
4+
5+
The folder structure is the following:
6+
- `src/app` contains the pages and layouts
7+
- `src/components` contains the UI components like Editor, MenuBar, Toolbar, ResourcePalette, PropertiesPanel, custom diagram Nodes etc.
8+
- `src/config` contains generic website configuration files
9+
- `src/hooks` contains custom React hooks, like useAutoSave, useMindMap, useKeyboardShortcuts, useUserSettings, etc.
10+
- `src/lib` contains generic libraries, like Storage for handling Blob storage operations
11+
- `src/model` contains data models
12+
- `src/pages/api` contains the backend REST API implementations for auth, diagrams, user-settings
13+
- `src/public` contains public files
14+
- `src/services` contains services like DiagramService, Logger, SettingsService etc.
15+
- `src/utils` contains generic utilities like NodeUtils and AuthUtils.

.github/workflows/deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88

99
env:
1010
ACR_REGISTRY: ${{ secrets.ACR_REGISTRY }}
11-
IMAGE_NAME: aivomind
11+
IMAGE_NAME: mindmapflow
1212

1313
jobs:
1414
build-and-push:

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# AivoMind
1+
# MindMapFlow
22

3-
Meet AivoMind, your ultimate brainstorming companion. Designed to unleash creativity and enhance productivity, AivoMind transforms complex ideas into clear, structured visuals. Whether you're a student, professional, or creative, our intuitive interface helps you map out thoughts, simplify concepts, and bring your projects to life. Join the AivoMind revolution and unlock the full potential of your mind!
3+
Meet MindMapFlow, your ultimate brainstorming companion. Designed to unleash creativity and enhance productivity, MindMapFlow transforms complex ideas into clear, structured visuals. Whether you're a student, professional, or creative, our intuitive interface helps you map out thoughts, simplify concepts, and bring your projects to life. Join the MindMapFlow revolution and unlock the full potential of your mind!
44

55
![Screenshot](/public/screens/screen_20250204.png)
66

77
# Tech Stack
88

9-
AivoMind is built using these major components:
9+
MindMapFlow is built using these major components:
1010

1111
* React, Next.js - https://nextjs.org/
1212
* MUI React UI tools - https://mui.com/

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "aivomind",
2+
"name": "mindmapflow",
33
"version": "0.1.0",
44
"private": true,
55
"scripts": {

src/app/(home)/layout.tsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,21 @@ export default function RootLayout({
3535
<main className="container mx-auto max-w-7xl pt-16 px-6 flex-grow ">
3636
{children}
3737
</main>
38-
<footer className="w-full flex items-center justify-center py-3">
38+
<footer className="w-full flex flex-col items-center justify-center py-5 gap-3">
39+
<div className="flex gap-6 items-center">
40+
{siteConfig.footerItems?.map((item, index) => (
41+
<Link
42+
key={`footer-${index}`}
43+
className="text-slate-300 hover:text-white text-sm no-underline"
44+
href={item.href}
45+
underline="none"
46+
>
47+
{item.label}
48+
</Link>
49+
))}
50+
</div>
3951
<Link
40-
className="flex items-center gap-1 text-current no-underline"
52+
className="flex items-center gap-1 text-current no-underline mt-2"
4153
href="https://www.linkedin.com/in/tlaukkanen/"
4254
title="Tommi Laukkanen"
4355
underline="none"

src/app/(home)/page.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,16 @@ export default function Home() {
3333
<div className="flex gap-3 items-start justify-start max-w-4xl py-8 md:py-10 text-white">
3434
<div className="grid grid-cols-1 gap-6">
3535
<div className={subtitle({ class: "mt-4 text-white" })}>
36-
✏️ Meet AivoMind, your ultimate brainstorming companion. Designed
37-
to unleash creativity and enhance productivity, AivoMind
38-
transforms complex ideas into clear, structured visuals.
36+
✏️ Meet MindMapFlow, your ultimate brainstorming companion.
37+
Designed to unleash creativity and enhance productivity,
38+
MindMapFlow transforms complex ideas into clear, structured
39+
visuals.
3940
</div>
4041
<div className={subtitle({ class: "mt-4 text-white" })}>
4142
🧠 Whether you&apos;re a student, professional, or creative, our
4243
intuitive interface helps you map out thoughts, simplify concepts,
43-
and bring your projects to life. Join the AivoMind revolution and
44-
unlock the full potential of your mind!
44+
and bring your projects to life. Join the MindMapFlow revolution
45+
and unlock the full potential of your mind!
4546
</div>
4647
</div>
4748
</div>

src/app/(home)/privacy/layout.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
export default function PrivacyLayout({
2+
children,
3+
}: {
4+
children: React.ReactNode;
5+
}) {
6+
return (
7+
<section className="flex flex-col items-center justify-center gap-4 py-8 md:py-10">
8+
<div className="inline-block max-w-3xl text-center justify-center">
9+
{children}
10+
</div>
11+
</section>
12+
);
13+
}

src/app/(home)/privacy/page.tsx

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
import { title } from "@/components/primitives";
2+
3+
export default function PrivacyPolicyPage() {
4+
return (
5+
<div className="text-left">
6+
<h1 className={title({ class: "mb-6" })}>Privacy Policy</h1>
7+
8+
<h2 className="text-xl font-bold mb-3 mt-6">Introduction</h2>
9+
<p className="mb-4">
10+
At MindMapFlow, we respect your privacy and are committed to protecting
11+
your personal data. This privacy policy explains how we collect, use,
12+
and safeguard your information when you use our service.
13+
</p>
14+
15+
<h2 className="text-xl font-bold mb-3 mt-6">Information We Collect</h2>
16+
<p className="mb-2">We collect the following types of information:</p>
17+
<ul className="list-disc pl-5 mb-4">
18+
<li>Account information (email address) when you register</li>
19+
<li>Usage data related to how you interact with our application</li>
20+
<li>Content you create and store using our mind mapping tools</li>
21+
<li>
22+
Technical information such as your IP address, browser type, and
23+
device information
24+
</li>
25+
</ul>
26+
27+
<h2 className="text-xl font-bold mb-3 mt-6">
28+
How We Use Your Information
29+
</h2>
30+
<p className="mb-2">
31+
We use your information for the following purposes:
32+
</p>
33+
<ul className="list-disc pl-5 mb-4">
34+
<li>To provide and maintain our service</li>
35+
<li>To notify you about changes to our service</li>
36+
<li>To provide customer support</li>
37+
<li>
38+
To gather analysis or valuable information to improve our service
39+
</li>
40+
<li>To monitor the usage of our service</li>
41+
<li>To detect, prevent and address technical issues</li>
42+
</ul>
43+
44+
<h2 className="text-xl font-bold mb-3 mt-6">Data Security</h2>
45+
<p className="mb-4">
46+
The security of your data is important to us. We strive to use
47+
commercially acceptable means to protect your personal information, but
48+
we cannot guarantee its absolute security. Your data is stored securely
49+
in Azure Blob Storage with appropriate access controls.
50+
</p>
51+
52+
<h2 className="text-xl font-bold mb-3 mt-6">Sharing Your Information</h2>
53+
<p className="mb-4">
54+
We do not sell, trade, or rent your personal identification information
55+
to others. We may share generic aggregated demographic information not
56+
linked to any personal identification information regarding visitors and
57+
users with our business partners and trusted affiliates for the purposes
58+
outlined above.
59+
</p>
60+
61+
<h2 className="text-xl font-bold mb-3 mt-6">Third-party Services</h2>
62+
<p className="mb-4">
63+
We may use third-party services, such as Google Analytics and Microsoft
64+
Application Insights, to monitor and analyze the use of our service.
65+
These third parties have their own privacy policies addressing how they
66+
use such information.
67+
</p>
68+
69+
<h2 className="text-xl font-bold mb-3 mt-6">
70+
Changes to This Privacy Policy
71+
</h2>
72+
<p className="mb-4">
73+
We may update our Privacy Policy from time to time. We will notify you
74+
of any changes by posting the new Privacy Policy on this page and
75+
updating the &quot;Last updated&quot; date. You are advised to review
76+
this Privacy Policy periodically for any changes.
77+
</p>
78+
79+
<h2 className="text-xl font-bold mb-3 mt-6">Contact Us</h2>
80+
<p className="mb-4">
81+
If you have any questions about this Privacy Policy, please contact
82+
Tommi through LinkedIn:{" "}
83+
<a
84+
className="text-white underline"
85+
href="https://www.linkedin.com/in/tlaukkanen/"
86+
>
87+
https://www.linkedin.com/in/tlaukkanen/
88+
</a>
89+
</p>
90+
91+
<p className="text-sm text-gray-400 mt-8">Last updated: March 2025</p>
92+
</div>
93+
);
94+
}

src/app/(home)/terms/layout.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
export default function TermsLayout({
2+
children,
3+
}: {
4+
children: React.ReactNode;
5+
}) {
6+
return (
7+
<section className="flex flex-col items-center justify-center gap-4 py-8 md:py-10">
8+
<div className="inline-block max-w-3xl text-center justify-center">
9+
{children}
10+
</div>
11+
</section>
12+
);
13+
}

0 commit comments

Comments
 (0)