CSS : Improve appearance of list of tags;
Python : Add an error message to page URL; Python : Limit number of tags of each entry to 5 tags; README : Update Subtitle, Future features and Instructions. XHTML : Add titles to templates; XHTML : Add control characters U+200A HAIR SPACE and U+200B ZERO WIDTH SPACE (temporary); XHTML : Various of minor corrections and fixes.
This commit is contained in:
parent
100ccdd489
commit
3d9e5b2e02
30 changed files with 339 additions and 142 deletions
|
@ -15,7 +15,7 @@ types adc, dweb, ed2k, feed, ftp, gemini, geo, gopher, http, ipfs, irc, magnet,
|
|||
mailto, monero, mms, news, sip, udp, xmpp and any scheme and type that you
|
||||
desire.
|
||||
|
||||
# Technicalities
|
||||
## Technicalities
|
||||
|
||||
Blasta is a federated bookmarking system which is based on XMPP and stores
|
||||
bookmarks on your own XMPP account; to achieve this task, Blasta utilizes the
|
||||
|
@ -48,8 +48,9 @@ The connection to the Blasta system is made with XMPP accounts.
|
|||
- Atom Syndication Format;
|
||||
- Federation;
|
||||
- Filters;
|
||||
- Pin directory;
|
||||
- Publish-Subscribe.
|
||||
- Pin;
|
||||
- Publish-Subscribe;
|
||||
- Report.
|
||||
|
||||
## Requirements
|
||||
|
||||
|
@ -67,7 +68,7 @@ Use the following commands to start Blasta.
|
|||
```shell
|
||||
$ git clone https://git.xmpp-it.net/sch/Blasta
|
||||
$ cd Blasta/
|
||||
python -m uvicorn blasta:app --reload
|
||||
$ python -m uvicorn blasta:app --reload
|
||||
```
|
||||
|
||||
Open URL http://localhost:8000/ and connect with your Jabber ID.
|
||||
|
|
55
blasta.py
55
blasta.py
|
@ -751,6 +751,10 @@ class HttpInstance:
|
|||
# It does not seem to actually filter tags.
|
||||
# NOTE Yes. It does work.
|
||||
# See function "cache_items_and_tags".
|
||||
|
||||
# TODO Search by query
|
||||
#if param_query:
|
||||
|
||||
if param_tags or param_tld or param_filetype or param_protocol:
|
||||
tags_list = param_tags.split('+')
|
||||
if len(tags_list) == 1:
|
||||
|
@ -1834,15 +1838,16 @@ class HttpInstance:
|
|||
exist = True
|
||||
break
|
||||
else:
|
||||
print('IQ ISSUE?')
|
||||
breakpoint()
|
||||
print('IQ ISSUE?')
|
||||
|
||||
message = 'XMPP system message » Error: {}.'.format(iq)
|
||||
description = 'The requested bookmark could not be retrieved'
|
||||
path = 'error'
|
||||
return result_post(request, jabber_id, description, message, path)
|
||||
if exist:
|
||||
# TODO Perhaps adding a paragraph with "your tags" and "who else has tagged this link"
|
||||
# and keep the (5 item) limit.
|
||||
#entry = Syndication.extract_items(item_payload, limit=True)
|
||||
entry = Syndication.extract_items(item_payload)
|
||||
#entry = Syndication.extract_items(item_payload)
|
||||
# NOTE Display only 5 items, as all the other tags appear at the list of "Related tags".
|
||||
entry = Syndication.extract_items(item_payload, limit=True)
|
||||
if entry:
|
||||
#url_hash = iq_item['id']
|
||||
url_hash = Utilities.hash_url_to_md5(entry['link'])
|
||||
|
@ -1854,11 +1859,12 @@ class HttpInstance:
|
|||
entry['name'] = name
|
||||
entry['url_hash'] = url_hash
|
||||
entry['published_mod'] = Utilities.convert_iso8601_to_readable(entry['published'])
|
||||
#entry['tags'] = entry['tags'][:5]
|
||||
entries.append(entry)
|
||||
tags_list = {}
|
||||
tags_and_instances = SQLite.get_tags_and_instances_by_url_hash(db_file, url_hash)
|
||||
for tag, instances in tags_and_instances: tags_list[tag] = instances
|
||||
else:
|
||||
else: # NOTE Is it possible to activate this else statement? Consider removal.
|
||||
# https://fastapi.tiangolo.com/tutorial/handling-errors/
|
||||
#raise HTTPException(status_code=404, detail="Item not found")
|
||||
message = 'Blasta system message » Error: Not found.'
|
||||
|
@ -1930,7 +1936,6 @@ class HttpInstance:
|
|||
description = 'The requested bookmark does not exist'
|
||||
path = 'error'
|
||||
return result_post(request, jabber_id, description, message, path)
|
||||
return response
|
||||
message = 'Information for URL {}'.format(entries[0]['link']) # entry[2]
|
||||
description = 'Discover new links and see who shares them'
|
||||
template_file = 'browse.xhtml'
|
||||
|
@ -1977,12 +1982,13 @@ class HttpInstance:
|
|||
db_file = 'main.sqlite'
|
||||
instances = SQLite.get_entry_instances_by_url_hash(db_file, url_hash)
|
||||
timestamp = datetime.now().isoformat()
|
||||
tags_new = Data.organize_tags(tags) if tags else ''
|
||||
entry = {'title' : title.strip(),
|
||||
'link' : url.strip(),
|
||||
'summary' : summary.strip() if summary else '',
|
||||
'published' : published,
|
||||
'updated' : timestamp,
|
||||
'tags' : Data.organize_tags(tags) if tags else '',
|
||||
'tags' : tags_new,
|
||||
'url_hash' : url_hash,
|
||||
'jid' : jabber_id,
|
||||
'name' : name,
|
||||
|
@ -2051,18 +2057,22 @@ class HttpInstance:
|
|||
if node == 'public':
|
||||
tags_valid = []
|
||||
tags_invalid = []
|
||||
tags_list = tags.split(',')
|
||||
tags_old_list = tags_old.split(',')
|
||||
for tag in tags_old_list:
|
||||
if tag not in tags_list:
|
||||
#tags_list_new = tags.split(',')
|
||||
tags_list_new = tags_new
|
||||
tags_list_old = tags_old.split(',')
|
||||
for tag in tags_list_old:
|
||||
if tag not in tags_list_new:
|
||||
tags_invalid.append(tag)
|
||||
for tag in tags_list:
|
||||
if tag not in tags_old_list:
|
||||
for tag in tags_list_new:
|
||||
if tag not in tags_list_old:
|
||||
tags_valid.append(tag)
|
||||
# FIXME Variable tags_valid is not in use.
|
||||
# NOTE Variable tags_valid might not be needed. See function associate_entries_tags_jids.
|
||||
await SQLite.delete_combination_row_by_entry_id_and_tag_id_and_jid_id(db_file, url_hash, tags_invalid, jabber_id)
|
||||
await SQLite.add_tags(db_file, [entry])
|
||||
# Slow (high I/O)
|
||||
if not SQLite.get_entry_id_by_url_hash(db_file, url_hash):
|
||||
entry_id = SQLite.get_entry_id_by_url_hash(db_file, url_hash)
|
||||
if not entry_id:
|
||||
await SQLite.add_new_entries(db_file, [entry]) # Is this line needed?
|
||||
await SQLite.associate_entries_tags_jids(db_file, entry)
|
||||
#elif not SQLite.is_jid_associated_with_url_hash(db_file, jabber_id, url_hash):
|
||||
|
@ -2072,12 +2082,14 @@ class HttpInstance:
|
|||
# Entry for HTML
|
||||
entry['published_mod'] = Utilities.convert_iso8601_to_readable(published)
|
||||
entry['updated_mod'] = Utilities.convert_iso8601_to_readable(timestamp)
|
||||
entry['tags'] = entry['tags'][:5]
|
||||
entries = [entry]
|
||||
template_file = 'browse.xhtml'
|
||||
template_dict = {
|
||||
'request': request,
|
||||
'description': description,
|
||||
'entries': entries,
|
||||
'exist': True,
|
||||
'jabber_id': jabber_id,
|
||||
'journal': journal,
|
||||
'message': message,
|
||||
|
@ -2085,7 +2097,8 @@ class HttpInstance:
|
|||
'param_hash': param_hash,
|
||||
'path': path,
|
||||
'pubsub_jid': jabber_id_pubsub,
|
||||
'syndicate': syndicate}
|
||||
'syndicate': syndicate,
|
||||
'tags' : tags_new}
|
||||
response = templates.TemplateResponse(template_file, template_dict)
|
||||
response.headers["Content-Type"] = "application/xhtml+xml"
|
||||
return response
|
||||
|
@ -4556,6 +4569,10 @@ class SQLite:
|
|||
cur = conn.cursor()
|
||||
cur.execute(sql, par)
|
||||
|
||||
# NOTE The result was ordered by number of instances
|
||||
# ORDER BY main_tags.instances DESC
|
||||
# And has been changed to order of alphabet
|
||||
# ORDER BY main_tags.tag ASC
|
||||
def get_tags_by_entry_id(db_file, entry_id):
|
||||
"""
|
||||
Get tags by an ID entry.
|
||||
|
@ -4577,11 +4594,11 @@ class SQLite:
|
|||
# .format(function_name, db_file, index_first))
|
||||
sql = (
|
||||
"""
|
||||
SELECT main_tags.tag
|
||||
SELECT DISTINCT main_tags.tag
|
||||
FROM main_tags
|
||||
INNER JOIN combination_entries_tags_jids ON main_tags.id = combination_entries_tags_jids.tag_id
|
||||
WHERE combination_entries_tags_jids.entry_id = ?
|
||||
ORDER BY main_tags.instances DESC
|
||||
ORDER BY main_tags.tag ASC
|
||||
LIMIT 5;
|
||||
"""
|
||||
)
|
||||
|
|
|
@ -147,7 +147,19 @@ form > * {
|
|||
width: 15%;
|
||||
/* float: right; */
|
||||
/* width: 200px; */
|
||||
}
|
||||
|
||||
#related-tags dd {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
#related-tags dd:hover {
|
||||
overflow: unset;
|
||||
overflow-wrap: break-word;
|
||||
text-overflow: unset;
|
||||
white-space: unset;
|
||||
}
|
||||
|
||||
#content {
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / about</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / {{path}}</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / atomsub</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -53,8 +53,12 @@
|
|||
<div id="main" class="row">
|
||||
<div id="content">
|
||||
<h2> PubSub Bookmarks</h2>
|
||||
<p>» The master standard for HTML.</p>
|
||||
<h3>Atomsub</h3>
|
||||
<p>
|
||||
» The master standard for HTML.
|
||||
</p>
|
||||
<h3>
|
||||
Atomsub
|
||||
</h3>
|
||||
<p>
|
||||
Atomsub, or Atom Over XMPP, is a simple and yet ingenious
|
||||
idea which was realized by the gentlemen: Peter Saint-Andre;
|
||||
|
@ -82,7 +86,9 @@
|
|||
<p>
|
||||
<a href="https://datatracker.ietf.org/meeting/66/materials/slides-66-atompub-1.pdf">
|
||||
datatracker.ietf.org
|
||||
</a> (PDF)
|
||||
</a>
|
||||
​ 
|
||||
(PDF)
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
|
@ -134,6 +140,7 @@
|
|||
<a href="https://xmpp.org/extensions/xep-0277.html">
|
||||
xmpp.org
|
||||
</a>
|
||||
​ 
|
||||
<a href="https://libervia.org/">
|
||||
libervia.org
|
||||
</a>
|
||||
|
@ -153,6 +160,7 @@
|
|||
<a href="https://xmpp.org/extensions/xep-0472.html">
|
||||
xmpp.org
|
||||
</a>
|
||||
​ 
|
||||
<a href="https://movim.eu/">
|
||||
movim.eu
|
||||
</a>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / {{path}}</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg" />
|
||||
<link rel="icon" type="image/svg+xml" href="/graphic/blasta.svg" />
|
||||
<link rel="stylesheet" type="text/css" media="screen"
|
||||
|
@ -135,6 +135,7 @@
|
|||
href="{% if jid %}/jid/{{jid}}{% elif path in ('query', 'url') %}/{% endif %}?tags={{tag}}">
|
||||
{{tag}}
|
||||
</a>
|
||||
​ 
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
by
|
||||
|
@ -166,6 +167,7 @@
|
|||
<span>details</span>
|
||||
{% endif %}
|
||||
</a>
|
||||
​ 
|
||||
at
|
||||
<span class="dt-published date"
|
||||
datetime="{{entry['published']}}">
|
||||
|
@ -186,7 +188,10 @@
|
|||
<a href="{% if jid %}/jid/{{jid}}{% elif path in ('query', 'url') %}/{% endif %}?tags={{tag}}">
|
||||
{{tag}}
|
||||
</a>
|
||||
​ 
|
||||
{% if tags[tag] %}
|
||||
({{tags[tag]}})
|
||||
{% endif %}
|
||||
</dd>
|
||||
{% endfor %}
|
||||
<dd>
|
||||
|
@ -215,17 +220,19 @@
|
|||
{% endif %}
|
||||
<div id="subscribe" class="row">
|
||||
<p>
|
||||
<img alt="💡" src="/graphic/xmpp.svg" width="16" height="16"/>
|
||||
<a href="xmpp:{{pubsub_jid}}?pubsub;action=subscribe;node={{node_id}}">
|
||||
<img src="/graphic/xmpp.svg" width="16" height="16"/>
|
||||
PubSub
|
||||
</a>
|
||||
​ 
|
||||
and
|
||||
<img alt="⚛" class="enlarge" src="/graphic/syndicate.svg" width="16" height="16"/>
|
||||
<a href="/{{syndicate}}?mode=feed{% if param_tags %}&tags={{param_tags}}{% endif %}{% if param_url %}&url={{param_url}}{% endif %}{% if param_hash %}&hash={{param_hash}}{% endif %}">
|
||||
<img src="/graphic/syndicate.svg" width="16" height="16"/>
|
||||
RSS
|
||||
<!-- img src="/graphic/atom.svg" width="36" height="14" alt="Atom"/ -->
|
||||
</a>
|
||||
feeds for this page are available.
|
||||
​ 
|
||||
syndication feeds for this page are available.
|
||||
</p>
|
||||
</div>
|
||||
<div id="footer" class="row">
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / connect</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / contact</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / {{path}}</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / feeds</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / help</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / ideas</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -53,30 +53,42 @@
|
|||
<div id="main" class="row">
|
||||
<div id="content">
|
||||
<h2> PubSub Bookmarks</h2>
|
||||
<p>» Some ideas which illustrate potential uses for Blasta.</p>
|
||||
<h3>The things that you can do with Blasta are endless</h3>
|
||||
<p>
|
||||
» Some ideas which illustrate potential uses for Blasta.
|
||||
</p>
|
||||
<h3>
|
||||
The things that you can do with Blasta are endless
|
||||
</h3>
|
||||
<p>
|
||||
Blasta is an open-ended indexing system, and, as such, it
|
||||
provides a versatile platform with which you have the
|
||||
ability to tailor its usage according to your desired
|
||||
preferences. Here are some illustrative scenarios:
|
||||
</p>
|
||||
<h4>Research</h4>
|
||||
<h4>
|
||||
Research
|
||||
</h4>
|
||||
<p>
|
||||
Whether you are composing an article, delving into an
|
||||
industry, or diligently working on your dissertation,
|
||||
leverage Blasta to organize and store your online source
|
||||
materials and insights.
|
||||
</p>
|
||||
<h4>Podcast</h4>
|
||||
<h4>
|
||||
Podcast
|
||||
</h4>
|
||||
<p>
|
||||
Explore a plethora of captivating podcasts by visiting
|
||||
<a href="{{origin}}/tag/podcast?filetype=spx">
|
||||
/tag/podcast?filetype=spx
|
||||
</a> or
|
||||
</a>
|
||||
​ 
|
||||
or
|
||||
<a href="{{origin}}/tag/podcast?filetype=ogg">
|
||||
/tag/podcast?filetype=ogg
|
||||
</a> and enjoy enriching content.
|
||||
</a>
|
||||
​ 
|
||||
and enjoy enriching content.
|
||||
</p>
|
||||
<p>
|
||||
Additionally, Blasta offers
|
||||
|
@ -86,7 +98,9 @@
|
|||
you are a podcaster, upload your spx, ogg or mp3 files to
|
||||
Blasta to generate a dedicated feed for your audience.
|
||||
</p>
|
||||
<h4>News</h4>
|
||||
<h4>
|
||||
News
|
||||
</h4>
|
||||
<p>
|
||||
If you are intending to start a site of news flash, then
|
||||
Blasta can be an adequate solution for you.
|
||||
|
@ -94,7 +108,9 @@
|
|||
<p>
|
||||
Additionally, you can also use Blasta to manage your notes.
|
||||
</p>
|
||||
<h4>Travel</h4>
|
||||
<h4>
|
||||
Travel
|
||||
</h4>
|
||||
<p>
|
||||
Facilitate trip planning by saving links related to
|
||||
accommodations, activities, and transportation on Blasta
|
||||
|
@ -103,7 +119,9 @@
|
|||
with friends and family members by utilizing the tag
|
||||
"for:{% if jabber_id %}{{jabber_id}}{% else %}jid{% endif %}".
|
||||
</p>
|
||||
<h4>Employment</h4>
|
||||
<h4>
|
||||
Employment
|
||||
</h4>
|
||||
<p>
|
||||
Stay updated on job openings and industry trends by
|
||||
following specific tags related to your field of interest on
|
||||
|
@ -116,16 +134,22 @@
|
|||
resume building, interview tips, and
|
||||
professional development.
|
||||
</p>
|
||||
<h4>File sharing</h4>
|
||||
<h4>
|
||||
File sharing
|
||||
</h4>
|
||||
<p>
|
||||
Share you favourite contents that you share via BitTorrent,
|
||||
eD2k or IPFS, whether publicly by
|
||||
<a href="{{origin}}/tag/?filetype=torrent">
|
||||
/tag/?filetype=torrent
|
||||
</a> and
|
||||
</a>
|
||||
​ 
|
||||
and
|
||||
<a href="{{origin}}/tag/?protocol=magnet">
|
||||
/tag/?protocol=magnet
|
||||
</a> or whether privately by utilizing the tag
|
||||
</a>
|
||||
​ 
|
||||
or whether privately by utilizing the tag
|
||||
"for:{% if jabber_id %}{{jabber_id}}{% else %}jid{% endif %}".
|
||||
</p>
|
||||
<p>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / libervia</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -62,7 +62,9 @@
|
|||
communications needs: instant messaging, (micro)blogging,
|
||||
file sharing, photo albums, events, forums, tasks, etc.
|
||||
</p>
|
||||
<h4>What is Libervia?</h4>
|
||||
<h4>
|
||||
What is Libervia?
|
||||
</h4>
|
||||
<p>
|
||||
Libervia (formerly "Salut à Toi") is a Libre communication
|
||||
ecosystem based on XMPP standard. It allows you to do many
|
||||
|
@ -79,7 +81,9 @@
|
|||
It features many interfaces (desktop, mobile, web, command
|
||||
line, console), and is multi-platforms.
|
||||
</p>
|
||||
<h4>Motives</h4>
|
||||
<h4>
|
||||
Motives
|
||||
</h4>
|
||||
<p>
|
||||
The project "Libervia" was born from a need to protect our
|
||||
liberties, our privacy and our independence. It is intended
|
||||
|
@ -92,7 +96,9 @@
|
|||
private interests. The network must belong to everybody, and
|
||||
be a force of expression and freedom for all Humanity.
|
||||
</p>
|
||||
<h4>Social Contract</h4>
|
||||
<h4>
|
||||
Social Contract
|
||||
</h4>
|
||||
<p>
|
||||
Towards this end, "Libervia" and those who participate in
|
||||
the project operate on a Social Contract, a commitment to
|
||||
|
@ -198,7 +204,9 @@
|
|||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<h4>Features</h4>
|
||||
<h4>
|
||||
Features
|
||||
</h4>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
|
@ -225,7 +233,9 @@
|
|||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<h4>Interfaces</h4>
|
||||
<h4>
|
||||
Interfaces
|
||||
</h4>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
|
@ -250,7 +260,10 @@
|
|||
Lot of powerful tools and features accompany the
|
||||
project, please check the
|
||||
<a href="https://libervia.org/documentation">
|
||||
documentation</a>.
|
||||
documentation
|
||||
</a>
|
||||
​
|
||||
.
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
@ -263,46 +276,57 @@
|
|||
Libervia is a Libre software, based on well established
|
||||
standards (XMPP), decentralised and federating. It is
|
||||
developed around strong ethical values. Check our
|
||||
<a href="https://libervia.org/social_contract">social
|
||||
contract</a>.
|
||||
<a href="https://libervia.org/social_contract">
|
||||
social contract
|
||||
</a>
|
||||
​
|
||||
.
|
||||
</p>
|
||||
<h4>Press</h4>
|
||||
<h4>
|
||||
Press
|
||||
</h4>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="http://andre-ani.fr/news/profil-libriste-goffi/">
|
||||
Profil de libriste : Goffi
|
||||
</a>
|
||||
​ 
|
||||
(andre-ani.fr)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://framablog.org/2015/11/02/salut-a-toi-couteau-suisse-des-reseaux-sociaux-libres/">
|
||||
Salut à toi, couteau suisse des réseaux sociaux libres
|
||||
</a>
|
||||
​ 
|
||||
(framablog.org)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://libervia.org/press">
|
||||
Libervia Press
|
||||
</a>
|
||||
​ 
|
||||
(libervia.org)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://www.linux-magazin.de/news/salut-a-toi-verbesserter-xmpp-client/">
|
||||
Salut à Toi; Verbesserter XMPP-Client
|
||||
</a>
|
||||
​ 
|
||||
(linux-magazin.de)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://linuxfr.org/tags/s%C3%A0t/public">
|
||||
Tous les contenus étiquetés avec « sàt » - LinuxFr.org
|
||||
</a>
|
||||
​ 
|
||||
(linuxfr.org)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://reflets.info/articles/sat-le-couteau-suisse-libre-et-open-source-de-la-communication">
|
||||
SàT : le couteau suisse Libre et open source de la communication
|
||||
</a>
|
||||
​ 
|
||||
(reflets.info)
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -314,12 +338,14 @@
|
|||
<a href="https://libervia.org">
|
||||
Official Site
|
||||
</a>
|
||||
​ 
|
||||
(libervia.org)
|
||||
</li>
|
||||
<li>
|
||||
<a href="xmpp:libervia@chat.jabberfr.org?join">
|
||||
Official Group Chat
|
||||
</a>
|
||||
​ 
|
||||
(chat.jabberfr.org)
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / movim</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -56,7 +56,9 @@
|
|||
<p>
|
||||
» The social platform shaped for your community.
|
||||
</p>
|
||||
<h3>About Movim</h3>
|
||||
<h3>
|
||||
About Movim
|
||||
</h3>
|
||||
<p>
|
||||
Movim is an abbreviation of "My Open Virtual Identity
|
||||
Manager" and is a distributed social network which, just
|
||||
|
@ -91,7 +93,9 @@
|
|||
The framework, which is built upon PHP, is a free software
|
||||
and can be experimented with by external developers.
|
||||
</p>
|
||||
<h4>What is Movim?</h4>
|
||||
<h4>
|
||||
What is Movim?
|
||||
</h4>
|
||||
<p>
|
||||
Movim is a social and chat platform that acts as a frontend
|
||||
for the XMPP network.
|
||||
|
@ -107,7 +111,9 @@
|
|||
Movim is fully compatible with the most used XMPP servers
|
||||
such as ejabberd or Prosody.
|
||||
</p>
|
||||
<h4>Blogs & Communities</h4>
|
||||
<h4>
|
||||
Blogs & Communities
|
||||
</h4>
|
||||
<p>
|
||||
Movim simplifies the management of your publications and
|
||||
news articles. So forget the ads, forget the superfluous. We
|
||||
|
@ -118,7 +124,9 @@
|
|||
nodes on different topics. Just click on the Communities
|
||||
link in your menu and start exploring!
|
||||
</p>
|
||||
<h4>Chats & Chatrooms</h4>
|
||||
<h4>
|
||||
Chats & Chatrooms
|
||||
</h4>
|
||||
<p>
|
||||
Start a conversation with a friend or join a multi-user
|
||||
chatroom in one click.
|
||||
|
@ -127,34 +135,45 @@
|
|||
Movim chats are coming with many features to give you the
|
||||
best chat experience across all your devices
|
||||
</p>
|
||||
<h4>Let's get started!</h4>
|
||||
<h4>
|
||||
Let's get started!
|
||||
</h4>
|
||||
<p>
|
||||
<a href="https://join.movim.eu/register">
|
||||
Create an XMPP account</a>
|
||||
Create an XMPP account
|
||||
</a>
|
||||
​ 
|
||||
and join one of our public instances on
|
||||
<a href="https://join.movim.eu">
|
||||
join.movim.eu</a>
|
||||
join.movim.eu
|
||||
</a>
|
||||
​ 
|
||||
(If you already have a XMPP account, you can directly join).
|
||||
</p>
|
||||
<h4>Press</h4>
|
||||
<h4>
|
||||
Press
|
||||
</h4>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://itsfoss.com/movim/">
|
||||
Movim: An Open-Source Decentralized Social Platform Based on XMPP Network
|
||||
</a>
|
||||
​ 
|
||||
(itsfoss.com)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://medevel.com/movim/">
|
||||
Movim: a decentralized open-source XMPP-based messaging and social platform
|
||||
</a>
|
||||
​ 
|
||||
(medevel.com)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://www.zdnet.fr/actualites/reseaux-sociaux-decentralises-movim-peut-il-reussir-la-ou-diaspora-a-echoue-39791588.htm">
|
||||
Réseaux sociaux décentralisés : Movim peut-il réussir là où Diaspora a échoué
|
||||
</a>
|
||||
​ 
|
||||
(zdnet.fr)
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -166,12 +185,14 @@
|
|||
<a href="https://movim.eu">
|
||||
Official Site
|
||||
</a>
|
||||
​ 
|
||||
(movim.eu)
|
||||
</li>
|
||||
<li>
|
||||
<a href="xmpp:movim@conference.movim.eu?join">
|
||||
Official Group Chat
|
||||
</a>
|
||||
​ 
|
||||
(conference.movim.eu)
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / now</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / philosophy</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / profile</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / projects</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / pubsub</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -183,18 +183,22 @@
|
|||
<a href="/?tags=brand:the-pirate-bay">
|
||||
brand:the-pirate-bay
|
||||
</a>
|
||||
​ 
|
||||
<a href="/?tags=directory:torrent">
|
||||
directory:torrent
|
||||
</a>
|
||||
​ 
|
||||
<a href="/?tags=service:search">
|
||||
service:search
|
||||
</a>
|
||||
​ 
|
||||
by
|
||||
<a href="/jid/fionn@jabber.i2p">Fionn</a>
|
||||
...
|
||||
…
|
||||
<a href="/url/3d0db4c019a01ebbbab1cf0723ed7ddd">
|
||||
<span class="instances-degree-fourth">and 57,293 other people</span>
|
||||
</a>
|
||||
​ 
|
||||
at
|
||||
<span class="date">{{date_now_readable}}</span>
|
||||
</div>
|
||||
|
@ -205,6 +209,23 @@
|
|||
node <code>urn:xmpp:bibliography:0</code> of your XMPP
|
||||
account.
|
||||
</p>
|
||||
<h4>Resources</h4>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://wiki.xmpp.org/web/PubSub_message_types">
|
||||
PubSub message types
|
||||
</a>
|
||||
​ 
|
||||
(wiki.xmpp.org)
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://wiki.xmpp.org/web/Tech_pages/PubSub">
|
||||
Tech pages/PubSub
|
||||
</a>
|
||||
​ 
|
||||
(wiki.xmpp.org)
|
||||
</li>
|
||||
</ul>
|
||||
<br/>
|
||||
<p class="quote bottom"
|
||||
title="Arthur Schopenhauer speaks about Bob Wyman, Jérôme Poisson, Joe Hildebrand, Peter Saint-Andre, and Timothée Jaussoin.">
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / questions</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -53,13 +53,19 @@
|
|||
<div id="main" class="row">
|
||||
<div id="content">
|
||||
<h2> PubSub Bookmarks</h2>
|
||||
<p>» Queries about Blasta.</p>
|
||||
<h3>Questions</h3>
|
||||
<p>
|
||||
» Queries about Blasta.
|
||||
</p>
|
||||
<h3>
|
||||
Questions
|
||||
</h3>
|
||||
<p>
|
||||
This document enumerates questions that were referred to the
|
||||
project Blasta.
|
||||
</p>
|
||||
<h4 id="what-is-jid">What is JID and what does it mean?</h4>
|
||||
<h4 id="what-is-jid">
|
||||
What is JID and what does it mean?
|
||||
</h4>
|
||||
<p>
|
||||
JID is an abbreviation of Jabber ID.
|
||||
</p>
|
||||
|
@ -87,7 +93,9 @@
|
|||
is related to computer language rust be tagged with
|
||||
"code:rust".
|
||||
</p>
|
||||
<h4 id="why-blasta">Why did you create Blasta?</h4>
|
||||
<h4 id="why-blasta">
|
||||
Why did you create Blasta?
|
||||
</h4>
|
||||
<p>
|
||||
We have created Blasta out of necessity.
|
||||
</p>
|
||||
|
@ -112,7 +120,9 @@
|
|||
Hence, we have created Blasta, which is a combination of
|
||||
YaCy and Shaarli, and is built on top of XMPP.
|
||||
</p>
|
||||
<h4 id="why-free">Why do you provide Blasta for free?</h4>
|
||||
<h4 id="why-free">
|
||||
Why do you provide Blasta for free?
|
||||
</h4>
|
||||
<p>
|
||||
While we want to make profit, and feed our wives and
|
||||
children, we are aware that we must be providing the Blasta
|
||||
|
@ -127,14 +137,16 @@
|
|||
later becomes clandestinely subdued to thugs from government
|
||||
or intelligence, which is the worst of all circumstances.
|
||||
</p>
|
||||
<h4 id="perspective">What is your perspective?</h4>
|
||||
<h4 id="perspective">
|
||||
What is your perspective?
|
||||
</h4>
|
||||
<p>
|
||||
Our perspective is that people should be living for the sake
|
||||
of eternity, which is what we are doing by creating and
|
||||
distributing Blasta.
|
||||
</p>
|
||||
<p>
|
||||
As conveyed in verse 77 of Hávamál:
|
||||
As conveyed in verse 77 of Hávamál
|
||||
</p>
|
||||
<p class="quote" title="“Deyr fé, deyja frændr, deyr sjalfr it sama, ek veit einn, at aldrei deyr: dómr um dauðan hvern.”">
|
||||
“Kinsmen die, and cattle die and so must one die oneself;
|
||||
|
@ -146,11 +158,11 @@
|
|||
― Hávamál: Sayings of the High One
|
||||
</p>
|
||||
<p>
|
||||
The German philosopher Arthur Schopenhauer has expressed
|
||||
since the same idea when he said:
|
||||
The German philosopher Arthur Schopenhauer expressed
|
||||
essentially the same idea when he said, that
|
||||
</p>
|
||||
<p class="quote">
|
||||
“The most any man can hope for:
|
||||
“The very most any man can hope for:
|
||||
<br/>
|
||||
Is a heroic passage through life.”
|
||||
<br/>
|
||||
|
@ -162,18 +174,24 @@
|
|||
<p>
|
||||
Greatness, rather than happiness, is
|
||||
<span class="instances-degree-first">
|
||||
a mark of a good life</span>.
|
||||
the mark of a good life
|
||||
</span>
|
||||
​
|
||||
.
|
||||
</p>
|
||||
<p>
|
||||
Live for the sake of eternity, for the past, and towards the
|
||||
future.
|
||||
</p>
|
||||
<h4 id="why-xmpp">Why did you choose XMPP as a platform?</h4>
|
||||
<h4 id="why-xmpp">
|
||||
Why did you choose XMPP as a platform?
|
||||
</h4>
|
||||
<p>
|
||||
The XMPP platform (which is also known as Jabber), is a
|
||||
reputable and a strong telecommunication platform which
|
||||
almost every intelligence and militant agency on the world
|
||||
is making use of as a premier telecommunication mean.
|
||||
The <a href="/help/about/xmpp">XMPP</a> platform (which is
|
||||
also known as Jabber), is a reputable and a strong
|
||||
telecommunication platform which almost every intelligence
|
||||
and militant agency on the world is making use of as a
|
||||
premier telecommunication mean.
|
||||
</p>
|
||||
<p>
|
||||
Because we did not want to use databases, which sometimes
|
||||
|
@ -191,7 +209,8 @@
|
|||
needed.
|
||||
</p>
|
||||
<p>
|
||||
So we chose the specification XEP-0060: Publish-Subscribe
|
||||
So we chose the specification XEP-0060:
|
||||
<a href="/help/about/xmpp/pubsub">Publish-Subscribe</a>
|
||||
(PubSub) as a base mechanism for a data storage platform.
|
||||
</p>
|
||||
<p>
|
||||
|
@ -201,25 +220,31 @@
|
|||
truely private and is truely owned by the account owner,
|
||||
which is also a major advantage to Blasta, not only for the
|
||||
sake of privacy and data integrity, but also for an
|
||||
immediate recoverying of the bookmarks sharing system, if
|
||||
the Blasta database would be to diappear or should be
|
||||
restructured.
|
||||
immediate recovery of the bookmarks sharing system, if the
|
||||
Blasta database would be to diappear or should be
|
||||
restructured anew.
|
||||
</p>
|
||||
<p>Use XMPP. Spread XMPP. Be XMPP.</p>
|
||||
<h4 id="other-platforms">What platform would you choose if not XMPP?</h4>
|
||||
<p>
|
||||
Use XMPP. Spread XMPP. Be XMPP.
|
||||
</p>
|
||||
<h4 id="other-platforms">
|
||||
What platform would you choose if not XMPP?
|
||||
</h4>
|
||||
<p>
|
||||
If we were to choose another platfom, it probably would have
|
||||
been DeltaChat (SMTP and IMAP), Nostr or Session.
|
||||
</p>
|
||||
<h4>Why did you decide to make Blasta open source?</h4>
|
||||
<h4>
|
||||
Why did you decide to make Blasta open source?
|
||||
</h4>
|
||||
<p>
|
||||
One of the main reasons is for freedom to thrive.
|
||||
</p>
|
||||
<p>
|
||||
We are worried due to various of PsyOps that are conducted
|
||||
by governments, military and intelligence agencies, and we
|
||||
realize that most of their success relies on the
|
||||
centralization of information hubs; and
|
||||
We are worried due to various of PsyOps that are being
|
||||
conducted by governments, military and intelligence
|
||||
agencies, and we realize that most of their success relies
|
||||
on the centralization of information hubs; and
|
||||
</p>
|
||||
<p>
|
||||
We are further worried of the awful measures that are being
|
||||
|
@ -276,7 +301,9 @@
|
|||
functionality with <a href="/help/utilities#greasemonkey">
|
||||
userscripts and userstyles</a>.
|
||||
</p>
|
||||
<h4 id="conclusion">Conclusion</h4>
|
||||
<h4 id="conclusion">
|
||||
Conclusion
|
||||
</h4>
|
||||
<p>
|
||||
Please <a href="/contact">contact us</a> and ask us
|
||||
anything. We will be happy to read from you!
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / register</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / {{path}}</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -60,7 +60,7 @@
|
|||
{{description}}
|
||||
</h3>
|
||||
<p>
|
||||
You can return to the previous page or browse
|
||||
You can try to reload this page or browse
|
||||
{% if jabber_id %}
|
||||
your <a href="/jid">bookmarks</a>.
|
||||
{% else %}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / search</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / software</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / syndication</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -67,16 +67,23 @@
|
|||
pages that list bookmarks.
|
||||
</p>
|
||||
<p>
|
||||
An atom <span class="enlarge">⚛</span> or an orange
|
||||
<img src="/graphic/syndicate.svg" width="16" height="16"/>
|
||||
icon at the bottom of a subject page would indicate of
|
||||
An atom or an orange icon (
|
||||
<img alt="⚛"
|
||||
class="enlarge"
|
||||
height="16"
|
||||
src="/graphic/syndicate.svg"
|
||||
width="16"/>
|
||||
) at the bottom of a subject page would indicate of
|
||||
availability of an Atom Syndication Feed for use with
|
||||
Feed Reader.
|
||||
</p>
|
||||
<p>
|
||||
A bulb 💡 or an XMPP
|
||||
<img src="/graphic/xmpp.svg" width="16" height="16"/>
|
||||
icon at the bottom of a subject page would indicate of
|
||||
A bulb or an XMPP icon (
|
||||
<img alt="💡"
|
||||
height="16"
|
||||
src="/graphic/xmpp.svg"
|
||||
width="16"/>
|
||||
) at the bottom of a subject page would indicate of
|
||||
availability of a PubSub subscription for use with an
|
||||
XMPP client.
|
||||
</p>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / tag</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -70,7 +70,9 @@
|
|||
{% endif %}
|
||||
<a href="/{% if jid %}jid/{{jid}}{% endif %}?tags={{tag}}">
|
||||
{{tag}}
|
||||
</a></span>
|
||||
</a>
|
||||
</span>
|
||||
​ 
|
||||
{% endfor %}
|
||||
</p>
|
||||
</div>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / thanks</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
@ -56,45 +56,59 @@
|
|||
<p>
|
||||
» Gratitude and appreciation from the world over.
|
||||
</p>
|
||||
<h3>Thanks</h3>
|
||||
<h3>
|
||||
Thanks
|
||||
</h3>
|
||||
<p>
|
||||
We would want to express our gratitude and appreciation to
|
||||
special men and women from Argentina, Canada, France
|
||||
Germany, Ireland, Italy, Palestine, Russia and The
|
||||
Netherlands.
|
||||
</p>
|
||||
<h4>Mr. Damian Sartori</h4>
|
||||
<h4>
|
||||
Mr. Damian Sartori
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Damian Sartori (a.k.a.:
|
||||
TheCoffeMaker) from <a href="https://cyberdelia.com.ar/">
|
||||
Cyberdelia</a> for providing instructions for present and
|
||||
future database management.
|
||||
</p>
|
||||
<h4>Mr. Guus der Kinderen</h4>
|
||||
<h4>
|
||||
Mr. Guus der Kinderen
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Guus der Kinderen of
|
||||
<a href="http://igniterealtime.org">Ignite Realtime</a> who
|
||||
has instantly provided us with relevant references from
|
||||
has instantly provided us with relevant references from the
|
||||
XMPP specification
|
||||
<a href="https://xmpp.org/extensions/xep-0060.html">
|
||||
XEP-0060: Publish-Subscribe</a> and who has generously
|
||||
provided us with <a href="http://goodbytes.im">Goodbytes</a>
|
||||
Openfire servers for testing Blasta and related projects.
|
||||
<a href="https://igniterealtime.org/projects/openfire/">
|
||||
Openfire</a> servers for testing Blasta.
|
||||
</p>
|
||||
<h4>Mr. Jérôme Poisson</h4>
|
||||
<h4>
|
||||
Mr. Jérôme Poisson
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Jérôme Poisson of project
|
||||
<a href="https://libervia.org">Libervia</a> who has
|
||||
instructed us in coordinating the Blasta system with the
|
||||
Libervia system.
|
||||
</p>
|
||||
<h4>Mrs. Laura Lapina</h4>
|
||||
<h4>
|
||||
Mrs. Laura Lapina
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mrs. Laura Lapina of 404 City and
|
||||
Loqi who has contributed her advises to select the proper
|
||||
technologies, and plan and engineer the master database
|
||||
operation workflow.
|
||||
</p>
|
||||
<h4>Mr. Schimon Jehudah Zachary</h4>
|
||||
<h4>
|
||||
Mr. Schimon Jehudah Zachary
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Schimon Jehudah Zachary of
|
||||
project <a href="https://git.xmpp-it.net/sch/Rivista">
|
||||
|
@ -104,22 +118,28 @@
|
|||
information, including elaborative SQLite queries that have
|
||||
accelerated and saved us precious development time.
|
||||
</p>
|
||||
<h4>Mr. Simone Canaletti</h4>
|
||||
<h4>
|
||||
Mr. Simone Canaletti
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Simone Canaletti of project
|
||||
<a href="https://woodpeckersnest.eu">WPN</a> who has helped
|
||||
in deploying and testing our applications, including
|
||||
benchmarking for mass deployment, in addition to providing
|
||||
us with the adequate means for hosting the development
|
||||
ground of the Blasta platform and related projects.
|
||||
in deploying and testing Blasta, including benchmarking for
|
||||
mass deployment, in addition to providing us with the
|
||||
adequate means for hosting the development ground of the
|
||||
Blasta platform and related projects.
|
||||
</p>
|
||||
<h4>Mr. Stephen Paul Weber</h4>
|
||||
<h4>
|
||||
Mr. Stephen Paul Weber
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Stephen Paul Weber of project
|
||||
<a href="https://soprani.ca">Soprani.ca</a> who has
|
||||
explained to us about various of the XMPP specifications.
|
||||
</p>
|
||||
<h4>Mr. Timothée Jaussoin</h4>
|
||||
<h4>
|
||||
Mr. Timothée Jaussoin
|
||||
</h4>
|
||||
<p>
|
||||
We would want to thank to Mr. Timothée Jaussoin of project
|
||||
<a href="https://movim.eu">Movim</a> who has contributed
|
||||
|
@ -130,7 +150,9 @@
|
|||
various of occasions, including answering to questions that
|
||||
were already asked and answered more than once.
|
||||
</p>
|
||||
<h4>XMPP Berlin in association with XMPP Italia</h4>
|
||||
<h4>
|
||||
XMPP Berlin in association with XMPP Italia
|
||||
</h4>
|
||||
<p>
|
||||
Finally, we would want to thank to the fine gentlemen
|
||||
Lorenzo, Mario, Martin, Roberto, Schimon, Simone, and others
|
||||
|
@ -143,7 +165,9 @@
|
|||
</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://video.xmpp-it.net">XMPP-IT</a>
|
||||
<a href="https://video.xmpp-it.net">
|
||||
XMPP-IT
|
||||
</a>
|
||||
</p>
|
||||
<br/>
|
||||
<p class="quote bottom">
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / utilities</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="color-scheme" content="dark light" />
|
||||
<title>Blasta</title>
|
||||
<title>Blasta / xmpp</title>
|
||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||
|
|
Loading…
Reference in a new issue