@select-org/select-post-builder 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release-package.yml +33 -0
- package/README.md +68 -0
- package/index.js +1 -0
- package/package.json +20 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
name: Node.js Package
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [created]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
build:
|
|
9
|
+
runs-on: ubuntu-latest
|
|
10
|
+
steps:
|
|
11
|
+
- uses: actions/checkout@v5
|
|
12
|
+
- uses: actions/setup-node@v4
|
|
13
|
+
with:
|
|
14
|
+
node-version: 20
|
|
15
|
+
- run: npm ci
|
|
16
|
+
- run: npm test
|
|
17
|
+
|
|
18
|
+
publish-gpr:
|
|
19
|
+
needs: build
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
permissions:
|
|
22
|
+
packages: write
|
|
23
|
+
contents: read
|
|
24
|
+
steps:
|
|
25
|
+
- uses: actions/checkout@v5
|
|
26
|
+
- uses: actions/setup-node@v4
|
|
27
|
+
with:
|
|
28
|
+
node-version: 20
|
|
29
|
+
registry-url: https://npm.pkg.github.com/
|
|
30
|
+
- run: npm ci
|
|
31
|
+
- run: npm publish
|
|
32
|
+
env:
|
|
33
|
+
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
package/README.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Post Builder Widget
|
|
2
|
+
|
|
3
|
+
A reusable, extensible **Post Builder widget** for the Select platform and beyond.
|
|
4
|
+
Designed to ensure functional parity across web and mobile clients, while enabling rapid iteration and consistent UX.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## ✨ Features
|
|
9
|
+
|
|
10
|
+
- **Functional Parity with Mobile**
|
|
11
|
+
Supports all content types available in the mobile client.
|
|
12
|
+
|
|
13
|
+
- **Rich Text Editing**
|
|
14
|
+
Powered by [Tiptap](https://tiptap.dev), with support for:
|
|
15
|
+
|
|
16
|
+
- Bold, italic, underline, lists, etc.
|
|
17
|
+
- Representative formatting preview before publishing.
|
|
18
|
+
- Extensible architecture for custom features (polls, embeds, etc.).
|
|
19
|
+
|
|
20
|
+
- **Multi-media Posts**
|
|
21
|
+
|
|
22
|
+
- Inline image and GIF search.
|
|
23
|
+
- Drag-and-drop or select image uploads.
|
|
24
|
+
|
|
25
|
+
- **Exposure Settings**
|
|
26
|
+
Audience and privacy controls directly in the composer.
|
|
27
|
+
|
|
28
|
+
- **Creation UX**
|
|
29
|
+
|
|
30
|
+
- Floating action button: start composing from anywhere.
|
|
31
|
+
- Modal-based editor: avoids disrupting scroll position.
|
|
32
|
+
- Optimized for desktop and small-screen views.
|
|
33
|
+
|
|
34
|
+
- **Fast-Follow UX**
|
|
35
|
+
TBD improvements for polish and responsiveness.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 🛠️ Technical Decisions
|
|
40
|
+
|
|
41
|
+
- **Widget-First Architecture**
|
|
42
|
+
The Post Builder is implemented as a self-contained widget, ensuring:
|
|
43
|
+
|
|
44
|
+
- Reusability across multiple projects/clients.
|
|
45
|
+
- Improvements are shared instead of locked into a single client.
|
|
46
|
+
|
|
47
|
+
- **Build & Distribution**
|
|
48
|
+
|
|
49
|
+
- **[Vite](https://vitejs.dev/):** Lightning-fast dev builds (esbuild) and optimized production bundles (Rollup).
|
|
50
|
+
- **GitHub Packages:** Internal package distribution with flexibility to migrate to npm if needed.
|
|
51
|
+
|
|
52
|
+
- **Styling**
|
|
53
|
+
|
|
54
|
+
- **Tailwind CSS v4:** Utility-first design system for consistency and maintainability.
|
|
55
|
+
|
|
56
|
+
- **Rich Text Engine**
|
|
57
|
+
- **Tiptap:** Extensible editor framework enabling custom nodes, formatting, and media integrations.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 📦 Installation
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Install via GitHub Packages
|
|
65
|
+
npm install @your-org/post-builder
|
|
66
|
+
# or with yarn
|
|
67
|
+
yarn add @your-org/post-builder
|
|
68
|
+
```
|
package/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
console.log("Hello, World!");
|
package/package.json
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@select-org/select-post-builder",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "A reusable, extensible **Post Builder widget** for the Select platform and beyond. Designed to ensure functional parity across web and mobile clients, while enabling rapid iteration and consistent UX.",
|
|
5
|
+
"homepage": "https://github.com/supereffective/select-post-builder#readme",
|
|
6
|
+
"bugs": {
|
|
7
|
+
"url": "https://github.com/supereffective/select-post-builder/issues"
|
|
8
|
+
},
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/supereffective/select-post-builder.git"
|
|
12
|
+
},
|
|
13
|
+
"license": "ISC",
|
|
14
|
+
"author": "",
|
|
15
|
+
"type": "commonjs",
|
|
16
|
+
"main": "index.js",
|
|
17
|
+
"scripts": {
|
|
18
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
19
|
+
}
|
|
20
|
+
}
|