49 pontos por bdmg114 2025-05-13 | 37 comentários | Compartilhar no WhatsApp

Por que o MDshare?

  • A ousadia de não usar nem banco de dados e armazenar todas as informações na URL, com segurança e simplicidade
  • Permite compartilhar facilmente documentos em Markdown até com pessoas comuns que acham que Markdown é download de Minecraft
  • Não há absolutamente nenhuma necessidade de entregar informações para grandes empresas como a Notion
  • Dá para chamar atenção com uma URL longa e verbosa

Apresentação do serviço

  • É possível fazer upload de arquivos .md ou escrever documentos Markdown diretamente em uma textarea
  • A própria URL pode ser compartilhada com outras pessoas
  • Como o Obsidian não tem um recurso como Notion Page, e o Notion abrir toda vez que o computador liga é irritante, isso foi criado como uma alternativa ao Notion Page

37 comentários

 
sungwoo 2025-05-23

Acho que seria bom se também houvesse um modo de visualização de mapa mental.
https://markmap.js.org/

Obrigado pelo ótimo serviço.

 
aer0700 2025-05-15

Obrigado pelo ótimo app kkk. Acho que ficaria ainda melhor se tivesse alternância entre modo escuro e modo claro.

 
dane1 2025-05-14

Estou torcendo por isso kkkkkkkkkkk

 
ddaohgi 2025-05-13

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

 
girr311 2025-05-13

Boa ideia.

 
haebom 2025-05-13

Caí na gargalhada.

 
sjssjs1344 2025-05-13

Se só tivesse renderização de LaTeX, acho que daria para usar de forma realmente prática. A ideia também é divertida, gostei bastante de ver!

 
bdmg114 2025-05-14

Agora você pode usar o símbolo $ para escrever fórmulas e usar a renderização LaTeX! Obrigado pela sugestão!

 
dlehals2 2025-05-13

Isso não está renderizando em Markdown.

 
minhoryang 2025-05-13

Em vez de base64, vamos de base65535! https://github.com/qntm/base65536

 
as950118 2025-05-13

Qualquer serviço de ERD já funcionava desse jeito, mas é uma ideia interessante.

 
as950118 2025-05-13
 
zundog 2025-05-13

Nesse caso, talvez fosse melhor compactar e colocar a versão compactada diretamente no endereço?

 
curioe 2025-05-13

É divertido demais kkk

 
orange 2025-05-13

Tem uma vulnerabilidade aí..

 
bdmg114 2025-05-13

Tomamos medidas após identificar uma vulnerabilidade relacionada a XSS! Obrigado!

 
hybridego 2025-05-13

Nossa, joga tudo na URL!!

 
bichi 2025-05-13

kkkkkkkk

 
wkbae 2025-05-13

Até a área de fragmento (#) é um valor processado pelo user agent, então nem chega a ser enviada ao servidor. Segurança de dados perfeita.

 
edenkim9741 2025-05-13

Interessante kkk

 
ryj0902 2025-05-13

É realmente formidável.

 
zinisuni 2025-05-13

kkk, bom demais~

 
baeba 2025-05-13

Homem de verdade mesmo!!

 
aer0700 2025-05-13

Será que... mais pra frente vocês poderiam adicionar algo como renderização de LaTeX também? kkkk Parece um serviço bem legal.

 
bdmg114 2025-05-14

Adicionamos a funcionalidade de renderização LaTeX! Obrigado pelo interesse!

 
loblue 2025-05-13

O próprio padrão HTTP (RFC 2616) não define um limite explícito para o tamanho de uma URI. O servidor deve ser capaz de processar a URI de qualquer recurso que ele disponibiliza e, se uma URI de tamanho infinito puder ser gerada por meio de um formulário baseado em GET, ele deve ser capaz de lidar com isso.

Nossa, essa eu não sabia kkk

 
minhoryang 2025-05-13

Eu também sofri bastante com esse padrão. https://stackoverflow.com/a/417184 No passado, esta thread me ajudou.

 
sm0514sm 2025-05-13

Coisa de macho alfa..

 
unsure4000 2025-05-13

Se usar junto com um encurtador de URL, dá mesmo para aproveitar como uma alternativa bem simples de hospedagem.

 
y15un 2025-05-13

Oooh, macho raiz, oooh (precisamos de uma cor de fundo rosinha.)

Não há absolutamente nenhuma necessidade de entregar informações para grandes empresas como a Notion

👍👍

 
joyfui 2025-05-13

Markdown é download do Minecraft.. anotação...

 
bdmg114 2025-05-13

https://mdshare060114.web.app/?edit=false… b2JyYTsgZW0gdmV6IGRpc3NvLCBvIGVtcHJlZ2Fkb3IgdGVtIHVtIGZvcnRlIGluY2VudGl2byBwYXJhIHN1YnN0aXR1aXIgbyB0cmFiYWxoby4KMi4gKipFIHNlIHRyYWJhbGhvIHNpZ25pZmljYXNzZSBhcGVuYXMgc2Fsw6FyaW8/KioKICAgLSBTZSBhIHRlY25vbG9naWEgc3Vic3RpdWkgbwB0cmFiYWxobywgbyBjw6luYXJpbyBkbyDigJhmaW0gZG8gdHJhYmFsaG/inJ0gcGFzc2EgYSBzZXIgcmVhbC4KICAgLSBQb3J0YW50bywgcGVyZ3VudGFzIGNvbW8g4oCcYWzDqW0gZG8gZGluaGVpcm8sIGjDoSBhbGdvIHF1ZSBvYnRlbW9zIG5vIHRyYWJhbGhvP+KAnSBkZWl4YW0gZGUgc2VyIG1lcm8gZXh0cmF2YWdhbnphIGZpbG9zw7NmaWNhIGUgcGFzc2FtIGEgc2VyIHF1ZXN0w7VlcyByZWFpcyBzb2JyZSBhcyBjb25kacOnw7VlcyBkbyB0cmFiYWxoby4KLS0tCgojIyMgMi4gRGVmaW5pw6fDo28gZGUgY29uY2VpdG9zCgp8IFRlcm1vICAgICAgICAgICAgIHwgRGVmaW5pw6fDo28gb3BlcmFjaW9uYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAtLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CnwgKipWYWxvciAodmFsdWUpKiogfCBTaWduaWZpY2FkbywgcHJvcMOzc2l0byBvdSBkaXN0aW7Dp8OjbyBxdWUgdW0gaW5kaXZpZHVvIG91IGdydXBvIGNvbnNpZGVyYSDigJxpbXBvcnRhbnRl4oCdLiBEaXZpZGUtc2UgZW0gZWNvbsO0bWljbyAodmFsb3IgZGUgdHJvY2EpIGUgbsOjbyBlY29uw7RtaWNvIChpZGVudGlkYWRlLCDDqXRpY2EsIHJlbGHDp8O1ZXMsIGFwcmVuZGl6YWRvIGV0Yy4pLiB8CnwgKipUcmFiYWxobyAod29yaykqKiAgICB8IEF0byBkZSBpbnZlc3RpciBlbmVyZ2lhIHBhcmEgY3JpYXIsIG1hbnRlciBvdSBzdXN0ZW50YXIgdmFsb3IuIEluY2x1aSB0YW50byBvIHRyYWJhbGhvIHJlbXVuZXJhZG8gKHdhZ2UtbGFib3VyKSBxdWFudG8gbyB0cmFiYWxobyBuw6NvIHJlbXVuZXJhZG8gKG5vbi13YWdlIGxhYm91cikuIHwKfCAqKlZhbG9yIG7Do28gZWNvbsO0bWljbyoqIHwgRWZlaXRvcyBxdWUgbm8gc8OjbyBjb252ZXJ0aWRvcyBkaXJldGFtZW50ZSBlbSBzYWzDoXJpbyBvdSB0cm9jYSwgbWFzIHF1ZSBjb250cmlidWVtIHBhcmEgYSBxdWFsaWRhZGUgZGUgdmlkYSwgbGEgw6dhcyBzb2NpYWlzIGUgw6AgYXV0b3JlYWxpemHDp8Ojby4gfAoKLS0tCgojIyMgMy4gVmFsb3JlcyBuw6NvIGVjb27DtG1pY29zIHF1ZSBvIHRyYWJhbGhvIG9mZXJlY2UKCnxUaXBvIGRlIHZhbG9yICAgICB8IEV4ZW1wbG9zIGNvbmNyZXRvcyAgICAgICAgICAgICAgICB8CnwtLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwKfCBWYWxvciBpZGVudGl0w6FyaW8gfCBQb3IgZXhlbXBsbywgcHJvZmlzc2lvbmFsPGJyPmFydGlzdGE8YnI+Y3JpYWRvciBpbmRlcGVuZGVudGUgfAp8IFZhbG9yIHJlbGFjaW9uYWwgIHwgUHJvZmVzc29yICAgICAgICAgICAgICAgICAgICAgfAp8IFZhbG9yIHNvY2lhbCAgIHwgQXRpdmlzdGEgYW1iaWVudGFsLCB0cmFiYWxoYWRvciBkZSBvcmdhbmlzbW8gaW50ZXJuYWNpb25hbCB8Ci0gUGFyYSBjYWRhIHRpcG8gZGUgdmFsb3IsIGFwcmVzZW50YXIgdW1hIGV4cGxpY2HDp8OjbyBxdWUgbm8gc2UgcmVkdXogaSBhcGVuYXMgc28gc2Fsw6FyaW8KLSBBcHJlc2VudGFyIGEgZXhwb3Npw6fDo28gY29tIGVzdHJ1dHVyYSBxdWUgYWx0ZXJuZSBlbnRyZSBvIGFic3RyYXRvIGUgb2MgY29uY3JldG8sIHNlcGFyYW5kbyB2YWxvciBlIGNhc28KCi0tLQojIyMgNC4gT21lY2FuaXNtbyBwZWxvIHF1YWwgb3MgdmFsb3JlcyBuw6NvIGVjb27DtG1pY29zIHNlIHRvcm5hbSAnY29tcGVuc2HDp8OjbycKLSBGaWxvc29maWEgZGUgZXhwcmVzc8O1ZXMgZGlmw61jZWlzCi0gQSBwb3NzaWJpbGlkYWRlIGRvIHRyYWJhbGhvIGRlIGNvbnNlcnZhw6fDo28gZG8gV2lraXDDqWRpYSBlIGRhIGJ1cm9jcmFjaWEgZG9jdW1lbnRhbAogICAtIEFkaWNpb25hciBtYWlzIG1hdGVyaWFsCi0gTyBjb25jZWl0byBkZSBhbGllbmHDp8OjbyBkbyB0cmFiYWxobyBlbSBNYXJ4CiAgICAtIENvbSBvIGRlc2Vudm9sdmltZW50byB0ZWNub2zDs2dpY28gKElBLCBpbXByZXNzb3JhIDNEKSwgYWJyZS1zZSB1bSBjYW1pbmhvIHBhcmEgdW0gdHJhYmFsaG8gbWFpcyBwZXNzb2FsCiAgICAtIFBvc3NpYmlsaWRhZGUgZG8gdHJhYmFsaG8gY29tbyBhdXRvcnJlYWxpemHDp8OjbyAtPiBwb3NzaWJpbGlkYWRlIGRlIG7Do28gc2UgYWxpZW5hciBkbyByZXN1bHRhZG8gZG8gdHJhYmFsaG8KLS0tCiMjMyA1LiBPcyB2YWxvcmVzIG7Do28gZWNvbsO0bWljb3MgcG9kZW0gc3Vic3RpdHVpciBvICd2YWxvciBlY29uw7RtaWNvJz8KLSAiV29yay1saWZlIiBlIHRjLgogICAtIFdvcmstbGlmZSBiYWxhbmNlIHByZXNzdXDDtWUgc2VwYXJhw6fDo28gZW50cmUgdmlkYSBlIHRyYWJhbGhvCiAgICAtIErDoSBub3MgamEgw6kgdHJhYmFsaG8gY29tbyBtZXJvIG1laW8gcGFyYSBhIHZpZGEgZm9yYSBkbyB0cmFiYWxobwogICAtIFBvciBpc3NvLCBvIGZpbSBkbyB0cmFiYWxobyBwb2RlIHNlciBuw6NvIGFwZW5hcyBvIGZpbSBkbyB0cmFiYWxoYWRvciwgbWFzIHRhbXZlbSB1bWEgbGliZXJ0YcOnw6NvCi0gUGFydGUgZG8gdHJhYmFsaG8gcG9kZSBzZXIgc3VmaWNpZW50ZW1lbnRlIGNvbXBlbnNhZGEgY29tIHZhbG9yZXMgbuKAmWVjb27DtG1pY29zCiAgICAtIEFxdWVsZXMgcXVlIG7Do28gc28gamFtx6NvIGNvbXBhdcOt dmVpcyBwYXJlY2VtIHRlciB0ZW5kw6puY2lhIGEgc2FwYXJlY2VyCiAgICAtIE1hcyBleGlzdGUgb3V0cm8gcHJvYmxlbWE6IGEgbmVjZXNzaWRhZGUgZGUgcXVlIGVzc2VzIHRyYWJhbGhvcyBjb250aW51ZW0gZXhpc3RpbmRvCi0tLQoKIyMjIDYuIEVzdHJhdMOpZ2lhcyBwYXJhIHNlIHByZXBhcmFyIHBhcmEgYSBlcmEgZG8gJ3RyYWJhbGhvIHBvc3Qtc3Vic2lzdMOqbmNpYScKCnxDYW1wbyAgICAgfCBNZWRpZGFzIGNvbmNyZXRhcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IC0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfAp8ICoqSW5zdGl0dWNpb25hbCoqIHwg4pa4IFJlbmRhIGLDoXNpY2Egw4LihpggSm9ybmFkYSByZWR1emlkYSAoNCBkaWFzKcOAgpLCgiBpbmZyYWVzdHJ1dHVyYSBzb2NpYWwgKGdlc3TDo28gZGUgZGFkb3MgcMO6YmxpY29zIGV0Yy4pIHwKfCAqKlRlY25vbG9naWEqKiB8IOKWuCAnc2Fsw6FyaW8gZGUgcHJvcMOzc2l0bycgKHB1cnBvc2UgcGF5KSBcdTIwMjLihpggYW1wbGlhcsOqbyBkZSBsaWNlbsOnYSBwYXJhIGNvbnRyaWJ1acOnw6NvIHNvY2lhbCB8CnwgKipQZXNzb2FsKio gfCDilrggVHJhYmFsaG8gZW0gcG9ydGbDs2xpbyAoZW1wcmVnbyByZW11bmVyYWRvICsgdm9sdW50YXJpYWRvKcOAgpLCgiBwbGFubyBkZSBhcHJlbmRpemFkbyBjb250w61udW8gfAoKVXNvIGV4ZW1wbG8uLi4=

 
zaq1qaz 2025-05-13

Há uma vulnerabilidade de XSS em que, ao inserir HTML dentro do Markdown, é possível executar JavaScript.
Ao abrir a URL, o JavaScript inserido é executado imediatamente; acho que seria bom tomar medidas para impedir a execução de JavaScript nessa parte.

 
bdmg114 2025-05-13

Obrigado pelo relato da vulnerabilidade! Já corrigimos!

 
luiseok 2025-05-13

Também seria bom corrigir isto: mesmo colocando JavaScript em links, o XSS continua sendo permitido!

 
bdmg114 2025-05-14

Meu conhecimento sobre web e segurança é limitado; você poderia explicar com um pouco mais de detalhes, por favor..?

 
luiseok 2025-05-14

Se você compartilhar um texto em que o atributo de link clicável (href) é definido como javascript, como em [javscript link](javascript:alert(document.domain)), isso pode ser explorado em ataques como stored XSS. PoC: https://mdshare060114.web.app/?edit=false…